C++ STL 算法:Heap算法
来源:互联网 发布:js 设置disabled 编辑:程序博客网 时间:2024/05/16 10:34
1、堆排序算法(heapsort)
2、make_heap()//最大的放在堆顶
make_heap(ivec.begin(),ivec.end());
3、push_heap()//把最后的元素插入堆中
push_heap(ivec.begin(),ivec.end());
4、pop_heap()//把根弹到最后
pop_heap(ivec.begin(),ivec.end());
5、sort_heap()//按一定顺序排序
sort_heap(ivec.begin(),ivec.end());
例子:
#include <iostream>#include <algorithm>#include <vector>using namespace std;int main(){vector<int> ivec;for(int i=3; i<=7; ++i)ivec.push_back(i);for(int i=5; i<=9; ++i)ivec.push_back(i);for(int i=1; i<=4; ++i)ivec.push_back(i);for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;make_heap(ivec.begin(),ivec.end());for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;pop_heap(ivec.begin(),ivec.end());for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;ivec.pop_back();for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;ivec.push_back(17);for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;push_heap(ivec.begin(),ivec.end());for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;sort_heap(ivec.begin(),ivec.end());for(vector<int>::iterator iter = ivec.begin();iter != ivec.end(); ++iter)cout << *iter << ' ';cout << endl;system("pause");return 0;}
0 0
- STL算法 ---------- Heap算法
- STL中的heap算法
- STL算法之heap
- C++ STL 算法:Heap算法
- 手写堆heap(STL的heap算法)
- STL算法(Algorithms):堆(heap)
- STL——Heap算法
- STL中heap算法(堆算法)
- STL算法之heap算法,已排序区间算法
- SGI-STL学习笔记之heap算法
- C++ STL——heap相关算法
- STL之heap相关操作算法
- C++STL算法
- C++STL-算法transform
- C STL 之算法
- C++STL 常用算法
- C++STL算法简述
- C++--STL--transform算法
- C++开发-Eclipse开发C/C++ 安装配置图文详解 1
- ACM--steps--3.3.2--Piggy-Bank(完全背包)
- LeetCode 134. Gas Station
- hdu 4734 数位dp
- Yii2清除cookie的问题
- C++ STL 算法:Heap算法
- assets文件夹资源的访问
- 关于eclipse 开发java程序的要点
- 是什么造就了一个优秀的程序员?
- BNU寒假弱校联盟C.Shorter Musical Notes(upper_bound的使用)
- C++ 虚函数表解析
- 单链表翻转
- [LeetCode]LRU Cache
- Codeforces Round #291 (Div. 2) E - Darth Vader and Tree (DP+矩阵快速幂)