|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
|||||||||||||||||||||||||||||||
Наполнение списка в виде структуры дерева04.10.2018, 10:01. Показов 4552. Ответов 13
Добрый день.
Ребят, помогите начинающему в изучение python. Пытаюсь создать данные в виде дерева:
Добавлено через 11 часов 5 минут Отформатировал код. Необходимая структура данных:
Рекурсию которую написал:
0
|
|||||||||||||||||||||||||||||||
| 04.10.2018, 10:01 | |
|
Ответы с готовыми решениями:
13
Выдать на экран в текстовом режиме элементы дерева списка в виде дерева, повернутого против часовой стрелки
Представление структуры папков в фс в виде дерева |
|
|
|
| 04.10.2018, 13:14 | |
|
То есть на вход подаётся список и надо создать дерево?
Если id соответствует позиции в списке, тогда и делать-то особо ничего не надо. Если нет - то можно пройтись, создать нормально упорядоченый список и задача сведётся к уже решённой
0
|
|
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
|
| 04.10.2018, 15:29 [ТС] | |
|
Нет, id может не соответствовать порядку. Вопрос заключается в том, как заполнить результирующий список в необходимом формате
0
|
|
|
|
|
| 04.10.2018, 17:30 | |
|
Это же просто. Создаёте список из None длины L, где L - максимальный id. Пробегаете по входному списку, присваиваете элементу из нового списка нужный итем.
Разумеется, это пойдёт, если ваши id не очень большие. Вообще советую посмотреть, как делается дерево в простом случае, не из некоторого входного списка.
0
|
|
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
|
| 05.10.2018, 10:44 [ТС] | |
|
0
|
|
|
|
|
| 05.10.2018, 12:04 | |
|
Пожалуйста http://lmgtfy.com/?q=tree+data+structure+in+python .
Если вкратце - класс ветка, две ссылки на детей. Всё.
0
|
|
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
|
| 05.10.2018, 13:27 [ТС] | |
|
В примерах, как правило создаются деревья при помощи классов, у меня то попроще, я рекурсией прохожусь и по сути все что мне надо это наполнить список нужной структурой. Вот это у меня и не получается
0
|
|
|
|
||
| 05.10.2018, 13:33 | ||
|
Ambas, да, обычно делается с помощью классов - именно потому, что это в итоге оказывается проще.
Можете и без классов, тогда это будет куча https://ru.wikipedia.org/wiki/... 1%8B%D1%85) . Возможно, в вашем случае это будет проще. Добавлено через 51 секунду Обратите внимание на строчку:
0
|
||
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
||||||
| 05.10.2018, 15:18 [ТС] | ||||||
|
dondublon - Да, по всей видимости мне и нужна куча. Поэтому мой вопрос и заключается как правильно наполнить список all_stor что бы получить необходимую структуру?
Добавлено через 13 минут У меня получается заполнить список, статично:
Можете показать, как сделать это в цикле?
0
|
||||||
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
||
| 05.10.2018, 16:34 [ТС] | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 03.10.2018
Сообщений: 7
|
||||||||
| 05.10.2018, 17:25 [ТС] | ||||||||
|
Каждый id имеет отношение к id_parent, те id_parent у которых значение 0, являются родителями первого уровня. При создании темы я указывал исходный список:
0
|
||||||||
|
|
|
| 05.10.2018, 17:46 | |
|
Ambas, понятно. Ну, для контроля-то их лучше бы оставить.
0
|
|
| 05.10.2018, 17:46 | |
|
Помогаю со студенческими работами здесь
14
Представление дерева в виде списка Корректировка запросов при организации структуры изделия в виде дерева TreeView Вывод из Excel многоуровневого списка в виде дерева Формирование списка товаров склада в виде бинарного дерева Хранение и отображения списка папок в виде дерева (Иерархическая структура) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|