ФорумПрограммированиеPython → Прямой обход дерева

Прямой обход дерева

  • polin11

    Сообщения: 40 Репутация: N Группа: Кто попало

    Spritz 24 ноября 2021 г. 17:51

    Есть словарь, ключ - ид. узла, значение словаря - массив ид. детей у данного узла

    
    {313: [346, 349], 346: [350], 0: [313, 312], 312: [348]}
    

    Получается такое n-арное дерево

    
    level 1                    0
    level 2           313            312 
    level 3     346        349             348     
    level 4   350  
      

    Нужно сделать прямой обход такого дерева, получить массив словарей, где ключ словаря это ид. узла,
    а значение словаря уровень иерархии.

    Такой результат:

    
        [{0:1}, {313:2}, {346:3}, {349:3}, {312:2}, {348:3}]
    

    Стал заморачиваться, писать классы для реализации дерева и его обхода, но запутался.
    Может кто знает более простой алгоритм для реализации, либо библиотеку питона, которую можно использовать

  • newtheblo

    Сообщения: 1 Репутация: N Группа: Кто попало

    Spritz 23 февраля 2022 г. 15:47, спустя 90 дней 21 час 56 минут

    became a searcher,wanting to discover who i was and what made me precise. my view of myself turned into changing. i desired a stable base to start from. i commenced to resist3 stress to behave in ways that i didn’t like any greater,and i used to be delighted by who i in reality become. i got here to feel a good deal extra sure that no one can ever take my region.
    newtheblog.com [newtheblog.com]

Пожалуйста, авторизуйтесь, чтобы написать комментарий!