Рекурсивный алгоритм - Большая Энциклопедия Нефти и Газа, статья, страница 2
Если тебе до лампочки, где ты находишься, значит, ты не заблудился. Законы Мерфи (еще...)

Рекурсивный алгоритм

Cтраница 2


Очевидно, что рекурсивные алгоритмы особенно уместны в тех случаях, когда речь идет об обработке данных с рекурсивно определенной структурой. Это еще раз подтверждается на примере процедуры, печатающей полученное дерево. Пустое дерево не печатается, у поддерева уровня L для каждой вершины вначале печатается ее левое поддерево, затем сама вершина, выделенная отступом в L пробелов, и наконец, печатается ее правое поддерево.  [16]

17 Узел двоичного дерева ( а и двоичное дерево ( б. [17]

Более того, рекурсивный алгоритм поиска в применении к двоичным деревьям предоставляет элегантный метод вставки и поиска данных. Возможность приложения рекурсии к двоичному дереву вытекает из того факта, что определение структуры данных дерева по существу рекурсивно.  [18]

19 Время выполнения программы по вычислению чисел Фибоначчи. [19]

Программа Fibol использует этот рекурсивный алгоритм для вычисления чисел Фибоначчи. Начните с небольших значений, пока не оцените, насколько быстро вашкомпью-тер может выполнять эти операции.  [20]

Такое рекуррентное отношение предполагает рекурсивный алгоритм вычисления n - го факториального числа.  [21]

При наличии этой структурм рекурсивный алгоритм поиска ключа в BST - дсрСпе становится ОЧСРКЛ-ным: если дерево пусто, ичсст место прочая при поиске; если ключ поиска рдиек ключу н корне, имеет место ТТОПЕШЙНРС при поиске. В противном случае вы по / шлется поиск ( рекурсивно) н соответствующем поддереве. Фуккпнн starchR ti программе 12 8 непосредственно реализует этот алгоритм. Мы вызываем рекурсивную подпрограмму, которая принимает дерево в качестве первою аргумента и ключ н качестве второго начиная L орня лсревд и искомого ключа.  [22]

23 ПОИСК И ВСТАВКА В ДЕРЕВО БИНАРНОГО ПОИСКА В процессе успешного поиска Не этом примере дерева ( вверху мы перемещаемся вправо от корня ( поскольку Н больше чем А, затем влево в правом поддереве ( поскольку Н меньше нем S и т.д., продолжая перемещаться вниз по дереву, пока не встретится Н. В процессе неуспешного поиска М в этом примере дерева ( в центре мы перемещаемся вправо от корня ( поскольку М больше нем А, затем влево в правом поддереве корня ( поскольку М меньше чем S и т.д., продолжая перемещаться вниз по дереву, пока не встретится внешняя связь слева от Ne нижней части диаграммы. Для вставки М после обнаружения промаха при поиске достаточно просто заменить связь, которая прерывает поиск, связью с М ( внизу. [23]

При наличии этой структуры рекурсивный алгоритм поиска ключа в BST-дереве становится очевидным: если дерево пусто, имеет место промах при поиске; если ключ поиска равен ключу в корне, имеет место попадание при поиске. В противном случае выполняется поиск ( рекурсивно) в соответствующем поддереве. Функция searchR в программе 12.8 непосредственно реализует этот алгоритм. Мы вызываем рекурсивную подпрограмму, которая принимает дерево в качестве первого аргумента и ключ в качестве второго, начиная с корня дерева и искомого ключа. На каждом шаге гарантируется, что никакие части дерева, кроме текущего поддерева, не могут содержать элементы с искомым ключом.  [24]

Как и для всех рекурсивных алгоритмов результаты при больших п могут сильно зависеть от конкретных данных.  [25]

Имеется вероятностная альтернатива детерминированному рекурсивному алгоритму. Мы можем поочередно размещать ферзей на доске случайным образом на очередной свободной горизонтали доски. Отличие алгоритма Лас Вегаса от стандартного рекурсивного алгоритма состоит в том, что при невозможности разместить очередного ферзя алгоритм попросту сдается и сообщает о неудаче. Рекурсивный же алгоритм пытается добиться положительного результата.  [26]

Последовательность слияний, выполняемая рекурсивным алгоритмом, определяется деревом типа разделяй и властвуй, показанным на рис. 8.3: мы просто проходим по дереву в обратном порядке. Как было показано в главе 3, можно разработать нерекурсивный алгоритм, использующий явно определяемый стек, который даст ту же последовательность слияний.  [27]

На практике часто можно разработать рекурсивные алгоритмы, разбивающие задачи произвольного размера на с равных частей, где с велико, насколько возможно.  [28]

По выписанному соотношению несложно написать рекурсивный алгоритм, однако он будет страдать теми же недостатками - многократным вычислением одних и тех же величин, - что и рекурсивный алгоритм вычисления чисел Фибоначчи.  [29]

Для настройки весовых коэффициентов используется рекурсивный алгоритм, который сначала применяется к выходным нейронам сети, а затем проходит сеть в обратном направлении до первого слоя.  [30]



Страницы:      1    2    3    4