STL中堆(heap)函数的使用


所需头文件:algorithm

语言环境:c++

一般只用到四个make_heapsort_heappop_heappush_heap

  1. 首先这四个函数的参数都一样

first

首元素的地址

last

尾元素的地址

cmp

比较函数

  1. 返回值都为void
  2. 这四个函数都是建立在数组的基础上的
  3. 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;

}