pop_heap()

template <class RandIter>
	void pop_heap(RandIter start, RandIter end);
template <class RandIter, class Comp>
	void pop_heap(RandIter start, RandIter end, Comp cmpfn);

Описание

Меняет местами заданные элементы, а затем перестраивает кучу, используя диапазон, определяемый этими элементами

Алгоритм pop_heap() меняет местами элементы start и end - 1, а затем перестраивает кучу, используя диапазон, определяемый параметрами start и end - 1. Таким образом, первый элемент исходной кучи удаляется и создается новая куча, состоящая из оставшихся элементов. Хотя элемент из кучи удален, он по-прежнему присутствует в контейнере.

Вторая форма позволяет задать функцию сравнения, которая определяет, когда один элемент меньше другого,