@nvdfxx
Senior Pomidor developer

Поиск всех элементов, как?

Есть родительский элемент, у него может быть сколько угодно дочерних, у этих дочерних тоже может быть сколько угодно дочерних и т.д. Как пройти по всем элементам и записать в массив? ЯП не важен, хоть псевдокод. Рекурсивно или нет, тоже разницы нет, какой самый быстрый алгоритм?
  • Вопрос задан
  • 113 просмотров
Решения вопроса 3
longclaps
@longclaps
Senior Pomidor developer

#!/bin/pomidor

функцыя всехпорву(аргумент, мешок){
    мешок.запихнуть(аргумент)
    длявсех(детей аргумента){
        всехпорву(детей, мешок)
    }
}

конкретный_мешок = []
всехпорву(конкретный_аргумент, конкретный_мешок)
Ответ написан
Beshere
@Beshere
Разработчик
Рекурсия проще всего:

процедура_печать_дерева(узел) {
печать(узел)
для всех дочерей {
процедура_печать_дерева(дочерний узел) }
}
Ответ написан
@dmshar
Вопрос к Senior Pomidor developer - а синьор хоть понимает, что это будут разные алгоритмы в зависимости от того, что у вас в основе - дерево, направленный граф, или вообще - ненаправленный граф? Если понимает, то почему не указал явно? Если нет - тогда зачем ему этот алгоритм? Да и алгоритм вообще?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы