Мне трудно понять, как повторять октодерево или квадроцикл. И это может быть потому, что я не знаком с различными мифологиями повторения. Но давайте предположим, что я создал дерево квадрантов, которое содержит числа с плавающей запятой x, y, z; цвет двойного слова. Теперь давайте также скажем, что этот узел может производить только 4 дочерних элемента за раз (и эти дочерние элементы могут производить по 4 дочерних элемента и т. братья/сестры могут), все 4 созданных потомка имеют один и тот же цвет dword (опять же, если это произойдет, его братья/сестры все еще могут производить), или общее количество созданных узлов равно 87380. Когда происходит вышеизложенное, он помещается в контейнер. И процесс продолжается.
Теперь этот контейнер, который содержит узлы, имеет (например) 7 уровней глубины, все дочерние элементы дочерних элементов имеют разные x, y, zs и цвета. Проблема, с которой я сталкиваюсь, заключается в том, как я перебираю этот контейнер, как я могу пройти через всех детей, сестер? Поскольку корень ведет к 4 дочерним элементам, а эти 4 дочерних элемента имеют 4 дочерних элемента, и т. д., и т. д., и т. д.: 4 ^ 1 + 4 ^ 2.... + 4 ^ 7. Как мне найти нужный узел без написания сложных операторов if и перебора всего узла (начиная с корня)? Нужен ли контейнеру (тот, который создает узел) дополнительный код, который позволяет упростить этот процесс?
Извините, если вопрос общий.