陈越《数据结构》第五讲 树(下)
5.1 堆(heap)(解决优先队列)5.1.1 定义
5.1.2 存储和特性
5.1.3 堆抽象数据类型5.1.3.1插入5.1.3.2 删除5.1.4 总结1.了解堆的定义和结构; 5.2 哈夫曼树(解决编码)5.2.1 定义例:将百分制的考试成绩转换成五分制的成绩? 如何根据结点不同的查找频率构造更有效的搜索树?
5.2.2 构造与特点1.
2.
5.2.3 哈夫曼树编码1.
例:假设有一段文本,包含
2.
5.3 集合
5.4#include<stdio.h>
#define MAXH 1001
#define MINH -10001
int H[MAXH],size;
void Create()
{
size = 0;
H[0] = MINH;
/*设置"岗哨"*/
}
void Insert(int X)
{
int i;
for(i=++size;H[i/2]>X;i/=2)
H[i] = H[i/2];
H[i] = X;
}
int main()
{
int count,outCount,x,i,outNumb;
scanf("%d %d",&count,&outCount);
Create();
for(i = 0; i < count; i++)
{
scanf("%d",&x);
Insert(x);
}
for(i = 0; i < outCount ; i++)
{
scanf("%d",&outNumb);
printf("%d",H[outNumb]);
while(outNumb>1)
{
outNumb/=2;
printf(" %d",H[outNumb]);
}
printf("n");
}
return 0;
} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |