Направление обхода

Средний рейтинг
Еще нет оценок

Алфавитный

* Порядок символов в алфавите (например, ASCII, Unicode)

Бреадт-фист (шириной первого уровня)

* Начинается с корневого узла.
* Посещает все его дочерние узлы, прежде чем перейти к более глубоким уровням.
* Повторяет процесс до тех пор, пока не будут посещены все узлы.

Глубина-сначала

* Начинается с корневого узла.
* Рекурсивно переходит к самому левому дочернему узлу.
* Если дочернего узла нет, возвращается к родителю и переходит к следующему дочернему узлу.
* Повторяет процесс до тех пор, пока не будут посещены все узлы.

Изменение глубины прежде ширины

* Сочетание методов глубины-сначала и ширины-сначала.
* Сначала обходит определенное количество уровней дерева глубиной-сначала.
* Затем обходит следующий уровень шириной-сначала.
* Повторяет процесс, пока не будут посещены все узлы.

Обход дерева Морриса

* Без стека или рекурсии.
* Использует ссылки левого и правого дочерних элементов.
* Устанавливает левый дочерний элемент текущего узла на себя, если текущий узел посещается в первый раз.
* Устанавливает правый дочерний элемент текущего узла на себя, если текущий узел посещается во второй раз и помечается как посещенный.
* Посещает все узлы за один проход.

Обход Префиксного выражения (Префиксный)

* Выводит корень, а затем рекурсивно обходит левое и правое поддеревья.

Обход Инфиксного выражения (Инфиксный)

* Рекурсивно обходит левое поддерево, выводит корень и рекурсивно обходит правое поддерево.

Обход Постфиксного выражения (Постфиксный)

* Рекурсивно обходит левое и правое поддеревья, а затем выводит корень.

Оцените статью
Добавить комментарий