C++堆的使用
C++堆的使用
在看topk问题的时候看到使用堆可以达到nlogk复杂度的效果,就总结一些堆在C++里面的使用方法。
首先堆的使用需要包含这个头文件:
#include <algorithm>
使用vector构建堆:
vector<int> a;
push_heap(a.begin(), a.end());
其中默认是小顶堆
如果想把堆顶的元素删除可以:
pop_heap(a.begin(), a.end());
这样,堆顶的元素就自动放在了vector的末尾,可以使用
a.
原创
2020-09-18 14:09:41 ·
578 阅读 ·
0 评论