DAA - метод извлечения

Метод извлечения используется для извлечения корневого элемента кучи. Ниже приводится алгоритм.

 Algorithm: Heap-Extract-Max (numbers[]) 
max = numbers[1] 
numbers[1] = numbers[heapsize] 
heapsize = heapsize – 1 
Max-Heapify (numbers[], 1) 
return max 

пример

Давайте рассмотрим тот же пример, который обсуждался ранее. Теперь мы хотим извлечь элемент. Этот метод вернет корневой элемент кучи.

метод

После удаления корневого элемента последний элемент будет перемещен в корневую позицию.

Корневой элемент

Теперь будет вызвана функция Heapify. После Heapify создается следующая куча.

Heapify