Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Алгоритмы обхода дерева
Алгоритм перебора вершин дерева называется алгоритмом обхода дерева. Каждый алгоритм обхода дерева выполняет в узле три действия: заходит в узел, рекурсивно спускается по левому поддереву, рекурсивно спускается по правому поддереву. Существует три основных метода обхода дерева: 1. Прямой метод. 2. Симметричный метод. 3. Обратный метод. Алгоритмы обхода дерева отличаются порядком, в котором они выполняют свои действия в узле. 1. Прямой метод обхода дерева (сверху вниз, префиксный): · посещение узла; · прохождение левого поддерева; · прохождение правого поддерева.
2. Симметричный метод обхода дерева (слева направо, инфиксный): · прохождение левого поддерева; · посещение узла; · прохождение правого поддерева. Для этого же дерева порядок посещения узлов будет следующий: 0256789. Симметричный метод обхода дерева выводит элементы двоичного дерева поиска в порядке их возрастания. Таким образом, можно предложить еще один алгоритм сортировки: а) элементы массива включаются в двоичное дерево поиска. б) осуществляется симметричный метод обхода дерева. Эффективность алгоритма в лучшем случае составит . 3. Обратный метод обхода дерева (снизу вверх, постфиксный): · прохождение левого поддерева; · прохождение правого поддерева; · посещение узла. Для этого же дерева порядок посещения узлов будет следующий: 2065987. При обходе двоичного дерева выражений рассмотренными тремя способами получаем: 1. Прямой метод обхода соответствует префиксному формату записи выражения. 2. Симметричный метод обхода соответствует инфиксному формату записи выражения. 3. Обратный метод обхода соответствует постфиксному формату записи выражения.
|