1. Да се реализира абстрактен тип за двоични дървета:
    • конструктори (make-tree root left right), empty-tree
    • селектори (root-tree tree) (left-tree tree) (right-tree tree)
    • предикат (empty-tree? tree)
  2. Да се напише функция (depth tree), която намира дълбочината на дадено двочино дърво
  3. Да се напише функция (nodes tree), която намира всички възли на дадено двочино дърво
  4. Да се напише функция (mapt f tree), която прилага функцията f над всички елементи на дадено двочино дърво
  5. Да се напише функция (path node1 node2 tree), която намира път от node1 до node2 в дадено двочино дърво.
    • (find node tree) - намира поддървото с корен node
    • (path-root node tree) - намира път от корена до възел node
  6. Да се напише функция (levels tree), която връща списък от списъци от елементите намиращи се на 1,2,3... ниво на дадено двочино дърво. Ниво на даден възел в дървото е дължината на пътя от корена до възела. Коренът е на ниво 1.
Last modified: Saturday, 12 November 2011, 5:38 PM