Программирование на языке ПРОЛОГ для искуственного интеллекта




AVL - дерево: приближенно сбалансированное дерево - часть 3


Правило 1, например, принимает вид:

        соединить( Д1/Н1, А, д( Д21, В, Д22)/Н2, С, Д3/Н3,
                                                                    % Пять частей
        д( д( Д1/Н1, А, Д21)/На, В, д( Д22, С, Д3/Н3)/Нс)/Нb) :-
                                                                    % Результат
                H2 > H1, H2 > Н3,                     % Среднее дерево глубже остальных
                На is Н1 + 1,                              % Глубина левого поддерева
                Нс is Н3 + 1,                              % Глубина правого поддерева
                Hb is На + 1,                              % Глубина всего дерева

Программа доб_аvl, вычисляющая также глубину дерева и его поддеревьев, показана полностью на рис. 10.10.




Содержание  Назад  Вперед