Книга: Фундаментальные алгоритмы и структуры данных в Delphi
Восстановление свойства пирамидальное
Восстановление свойства пирамидальное
Вторую проблему (восстановление свойства пирамидальности) проще решить, чем первую (отыскание элемента, который нужно удалить или изменить его приоритет). Поэтому вначале рассмотрим именно ее.
Чтобы удалить произвольный элемент из сортирующего дерева, его нужно было бы поменять местами с последним элементом и уменьшить размер сортирующего дерева. На этом этапе появляется элемент, который может нарушить свойство пирамидальности.
Для изменения приоритета произвольного элемента следует просто внести изменение, в результате чего элемент может также нарушить свойство пирамидальности.
В обоих случаях мы получаем элемент, который может находиться в сортирующем дереве в неподходящей позиции. Т.е. для этого конкретного элемента нарушается свойство пирамидальности. Но мы знаем, как следует поступить в ситуации подобного рода: ранее мы уже сталкивались с ней при работе со стандартной очередью по приоритету. Если приоритет данного элемента выше приоритета его родительского элемента, мы перемещаем элемент в верхнюю часть сортирующего дерева за счет применения алгоритма пузырькового подъема. В противном случае мы сравниваем его с дочерними элементами. Если он меньше одного или обоих дочерних элементов, то при помощи алгоритма просачивания мы опускаем его в нижнюю часть сортирующего дерева..Со временем элемент окажется в позиции, где он будет меньше своего родительского и больше обоих дочерних элементов.
- Восстановление из резервной копии
- Восстановление с использованием инструмента gbak
- 11.2. СВОЙСТВА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
- Восстановление из резервных копий многофайловых баз данных
- Восстановление из резервной копии на системе-приемнике
- Восстановление поврежденной базы данных
- Восстановление "безнадежных" баз данных. InterBase Surgeon
- 4. Свойства унарных операций
- 3. Свойства бинарных операций
- Восстановление элементов списка из Корзины
- Часть II Автоматическое и ручное восстановление данных с жестких дисков
- Часть III Восстановление поврежденных носителей резервных копий