Шаг 14.
Динамические структуры данных в языке Prolog.
Формирование дерева

    На этом шаге мы рассмотрим построение дерева.

    Для построения дерева используется предикат while (X, D, D1), где X - добавляемый элемент, D - создаваемое дерево, D1 - дерево, необходимое для передачи параметра. В процессе формирования дерева каждый промежуточный результат (дерево с новым добавленным элементом) запоминается.

    После того как выполнится условие окончания ввода элементов, из стека будут извлекаться эти промежуточные результаты, и потеряется значение сформированного дерева, поэтому и вводится дополнительный параметр D1 для того, чтобы запомнить созданное дерево. Условие окончания ввода - число 999. Пока оно не введено элемент добавляется в дерево, затем вводится следующий компонент и рекурсивно вызывается предикат while.

while (999, D): -!.
while (X, D): -
     adlist (D, X, D1),
     readint (X1),
     while (X1, D1).

    На следующем шаге мы рассмотрим поиск вершины в дереве.




Предыдущий шаг Содержание Следующий шаг