Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
15 / 13 / 3
Регистрация: 20.02.2018
Сообщений: 446

Преобразование дерева поиска в список

11.12.2018, 19:06. Показов 1278. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Помогите пожалуйста написать функцию (используя только примитивы) (рекурсивную), преобразующею дерево поиска в список.

Например есть дерево следующего вида: (7 (4 (3 2 nil) (5 nil nil)) (8 nil (10 nil 12)))

нужно из него сделать список (7 4 3 2 5 8 10 12), или в другом порядке (порядок не важен).

Добавлено через 27 минут
Ребят, извините за беспокойство, нашел свою старую функцию по удалению элемента в списке со вложенными списками, чуть модифицировал её и всё заработало.

Может кому-то пригодится, вот код:

Lisp
1
2
3
4
5
6
7
(defun tree-list (lists)
    (cond ((null lists) nil)
    ((not (atom (car lists))) 
    (append (tree-list (car lists)) (tree-list (cdr lists))))
    ((eql (car lists) nil) (tree-list (cdr lists)))
    (t (cons (car lists) (tree-list (cdr lists))))
    ))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2018, 19:06
Ответы с готовыми решениями:

Для каждого бинарного дерева выполнить преобразование дерева в список, результат вывести в виде списка списков
Объясните почему не работает, задание было таким " Дан список, элементы которого — непустые бинарные деревья с числами в качестве...

Преобразование сбалансированного дерева в дерево поиска
пишу программу по примерам не могу найти как преобразовать сбалансированное дерево в дерево поиска вот пример моего кода # include...

Преобразование идельно сбалансированного дерева в дерево поиска
Здравствуйте, уважаемые специалисты! Вынуждена просить у вас помощи, ибо самой справиться не получается. Имеется задание: 1....

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.12.2018, 19:06
Помогаю со студенческими работами здесь

Выполнить преобразование дерева в список - пролог 5.2
Дан список, элементы которого — непустые бинарные деревья с числами в качестве вершин. Для каждого такого дерева выполнить преобразование...

Реализация дерева поиска список сыновей
Добрый день. Нужно создать 2-а дерева поиска и хранить их "списком сыновей". В нужно вставить в А используя обратных обход. И вывести...

преобразование списка смежных вершин (мультисписок) в связный список узлов бинарного дерева
товарищи, помогите сообразить алгоритм, после праздников туго идет.. спасибо

Деревья. Преобразование дерева в список. Вывод списка в списке. Найти среднее арифметическое всех элементов
Дан список, элементы которого — непустые бинарные деревья с числами в качестве вершин. Для каждого такого дерева выполнить преобразование...

Построить стягивающее дерево неориентированного графа методом поиска в ширину и вывести список рёбер дерева
1: Построить стягивающее дерево неориентированного графа методом поиска в ширину и вывести список рёбер дерева. Граф задан в текстовом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru