最大堆的建立和堆排序
堆是一种优先级队列的数据结构,对以完全二叉树的形式展现。以下是示例代码#include
using namespace std;
void initMaxHeap(int a [], int size)
{
for (int i = size/2; i > 0; --i)
{
int m = a[i-1];
int c = 2*i;
while (c = a[c-1])
break;
a[c/2-1] = a[c-1];
c *= 2;
原创
2011-02-15 15:02:00 ·
1956 阅读 ·
0 评论