INPUT:(A(B(d(E)(F)))(C)(K)) 我現在有兩個功能,這給我的OUTPUT:如何在沒有dolist的情況下在lisp中打印樹,只有遞歸?
甲
乙
ç
ķ
乙
d
d
Ë
˚F
Ë
NIL
但是我需要輸出這樣的:
一個:BCK
B:d
C:
k:
d:電子網
E:
F:
或
一個
b】S K
d
電子網
(defun print-children (s)
(cond ((null (caar (cdr s))) nil)
(t (print (caar (cdr s))) (print-children (cdr s)))))
(defun print-tree (s)
(cond ((null s) nil)
((atom (car s)) (print (car s)) (print-children s) (print-tree (cdr s)))
(t (print-tree (car s)))))
我不明白這個問題。 '全部來自新線路' - 這是什麼意思?您的問題缺乏預期輸入和輸出的有用示例。 –
@RainerJoswig改變了它,是更清晰的? – ninjaknight
@RainerJoswig新的堆棧,忘記添加所有的信息 – ninjaknight