Все доброго времени суток всем. Что-то решил поиграться с двоичными деревьями, и возник у меня вопрос... что насчёт удаления определённой ноды (листа)... ясное дело, можно сделать это в стиле C или любого другого императивного ЯП, но меня интересует, можно ли это сделать как-либо красивее, применив, возможно, функциональную парадигму? сейчас у меня есть вот такие функции: ;; добавление листа/ноды (defun insert-node (tree new-node) (if (not tree) new-node (if (>= (first tree) (first new-node)) (list (first tree) (insert-node (second tree) new-node) (third tree)) (list (first tree) (second tree) (insert-node (third tree) new-node))))) ;; создание листа/ноды (defun make-node (element) (list element nil nil)) ;; собственно построение дерева (defun make-tree (elements) (reduce #'insert-node (map 'list #'make-node elements))) сразу скажу, я не заморачивался о сбалансированности, и строил дерево в лоб, самым простым способом... ну а теперь собственно буду ждать, может кто-нить подскажет, как удалить некий лист, самым красивым способом? :)
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от ott
Ответ на:
комментарий
от Cy6erBr4in
Ответ на:
комментарий
от Cy6erBr4in
Ответ на:
комментарий
от ott
Ответ на:
комментарий
от Cy6erBr4in
Ответ на:
комментарий
от Vadim_Z
Ответ на:
комментарий
от Cy6erBr4in
Ответ на:
комментарий
от Vadim_Z
Ответ на:
комментарий
от Cy6erBr4in
Ответ на:
комментарий
от Vadim_Z
Ответ на:
комментарий
от Cy6erBr4in
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум [common lisp][ищу морфизм] ещё одна годная задачка про списки (2010)
- Форум [javascript][Alloy UI] Расширить TreeView и TreeNode (2011)
- Форум let сохраняет значения между вызовами функции (2016)
- Форум C / Базовые типы / 100 вопросов (2008)
- Форум Выясняем с помощью Emacs, какой ЯП лучше (2024)
- Форум Разбор кода на McCLIM (2020)
- Форум slime Coonection part (2023)
- Форум rabbitmq remove node from cluster (2019)
- Форум задачка о binary search tree / часть тестов провалено (2018)
- Форум Tree (2023)