存档

文章标签 ‘堆排序’

STL堆排序详解

2010年9月30日 没有评论

           在STL中,有很多的排序函数模板供我们调用,省去我们自己编写一些排序过程的麻烦。本文是一篇关于STL中堆排序的一个介绍。
    本文涉及的几个函数如下:make_heap(), push_heap(), pop_heap(), is_heap(), sort_heap()。其中make_heap()用于构建一个堆(如果你对“堆”这个数据结构不了解,请[......]

继续阅读

STL heapsort – 堆排序

2010年9月26日 没有评论

上一篇文章提到了手写堆排序过程,这里我们要调用STL中的堆排序,你会发现非常之方便。
首先make_heap,之后sort_heap即可,比较规则可以自己定义,默认是less<int>算子。
输入结束的标志,是EOF,关于EOF的介绍,可以查看以前的文章,EOF快捷键
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
u[......]

继续阅读

分类: STL编程 标签: , ,

C++堆排序类

2010年9月26日 4 条评论

恩,自己写的一个堆排序,顺便写成了一个类。不过没有写注释~~:)直接贴代码吧,准备搞一下软件设计师,所以看点东西补补身子。
//By 代码疯子
//Blog http://www.programlife.net/
//Date 2010-09-26
#include <iostream>
#include <cstdio>
using namespace std;

#define MAX_HEAP_NUM 1024
#define PARENT(i) (i&[......]

继续阅读

分类: C++编程 标签: , , , ,