п-ичных дерево запоминается следующим образом:Количество уровней в дереве в LISP
(node (list-subtree-1) (list-subtree-2) ...)
В качестве примера, дерево
A
/\
B C
/\
D E
представлена следующим образом: (А (в) (с (D), (Е)))
Возвращает количество уровней дерева
проблема заключается в том, что я Мне разрешено использовать только следующие функции: null, car, cdr, equal, atom, numberp, cons, cadr, caddr, cond и арифметические функции. Может ли кто-нибудь дать мне функцию, чтобы вернуть уровни такого дерева?
Я также должен был вернуться на уровень определенного заданного узла, и я сделал это так: (DEFUN лвл (узел лк) (конд ((нуль л) 1) ((равный (автомобиль l) узел) k) (t (* (lvl node (cadr l) (+ k 1)) (lvl node (caddr l) (+ k 1)))) ) он работает, но я не могу изменить его, чтобы вернуть количество уровней дерева ...) –
Это домашнее задание? – Flinkman
часть проекта для университета –