STL中堆(heap)函数的使用
所需头文件:algorithm
语言环境:c++
一般只用到四个make_heap、sort_heap、pop_heap、push_heap。
- 首先这四个函数的参数都一样
first |
首元素的地址 |
last |
尾元素的地址 |
cmp |
比较函数 |
- 返回值都为void
- 这四个函数都是建立在数组的基础上的
- cmp参数控制以大堆为基础还是以小堆为基础(默认均为大堆)
bool cmp(int a,int b) { return a>b;//小堆 return a } |
例子:
#include < algorithm> int main() { int a[]={1,2,3,4,5}; make_heap(&a[0],&a[4]); return 0; } |