Heap可被视为一个以序列式集合实现而成的二叉树,具有两大性质:
1.第一个元素总是最大或最小
2.总是能够在对数时间内增加或移除一个元素
为了处理heap,STL提供了4个算法:
1.make_heap()
将区间内的元素转化为heap.
2.push_heap()
对heap增加一个元素.
3.pop_heap()
对heap取出下一个元素.
4.sort_heap()
对heap转化为一个已排序群集.
…
…
make_heap
push_heap
pop_heap
sort_heap
使用例子:
template<typename T>
inline void INSERT_ELEMENTS(T& coll, int fi