首页 > STL编程 > STL heapsort – 堆排序

STL heapsort – 堆排序

上一篇文章提到了手写堆排序过程,这里我们要调用STL中的堆排序,你会发现非常之方便。

首先make_heap,之后sort_heap即可,比较规则可以自己定义,默认是less<int>算子。

输入结束的标志,是EOF,关于EOF的介绍,可以查看以前的文章,EOF快捷键

#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
using namespace std;

int main()
{
	vector<int> coll;
	copy(istream_iterator<int>(cin), istream_iterator<int>(), back_inserter(coll));
	make_heap(coll.begin(), coll.end());
	sort_heap(coll.begin(), coll.end());
	copy(coll.begin(), coll.end(), ostream_iterator<int>(cout, " "));
	cout << endl;

	return 0;
}

 


觉得文章还不错?点击此处对作者进行打赏!


本文地址: 程序人生 >> STL heapsort – 堆排序
作者:代码疯子(Wins0n) 本站内容如无声明均属原创,转载请保留作者信息与原文链接,谢谢!


更多



分类: STL编程 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.