数据结构实验报告 实验五.pdf
《数据结构实验报告 实验五.pdf》由会员分享,可在线阅读,更多相关《数据结构实验报告 实验五.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本文为本文为 WordWord版本,下载可任意编辑版本,下载可任意编辑 unsigned int weight;unsigned int parent,lchild,rchild;HTNode,*HuffmanTree;/动态安排数组存储郝夫曼树实现哈夫曼编码的生成算法。郝夫曼编码的存储表示二.试验目的:typedef char*HuffmanCode;/动态安排数组存储郝夫曼编码 1、使同学娴熟掌控哈夫曼树的生成算法。(2)主要的实现思路:2、娴熟掌控哈夫曼编码的方法。a.首先定义郝夫曼树的存储形式,这里运用了数组三.问题描述:b.用 select()遍历 n 个字符,找出权值最小的两个已知
2、 n 个字符在原文中涌现的频率,求它们的哈夫曼编码。c.构造郝夫曼树 HT,并求出 n 个字符的郝夫曼编码 HC 1、读入 n 个字符,以及字符的.权值,试建立一棵 Huffman 树。总结 2、依据生成的 Huffman 树,求每个字符的 Huffman 编码。并对给 1.基本上没有什么太大的问题,在调用 select()这个函数时,想定的待编码字符序列进行编码,并输出。把权值最小的两个结点的序号带回 HuffmanCoding(),所以把那 2 个四.问题的实现序号设置成了引用。(1)郝夫曼树的存储表示 2.在编程过程中,在什么时候安排内存,什么时候初始化花的时 typedef struc
3、t第 1 页 共 5 页数据结构实验报告数据结构实验报告 实验五实验五本文为本文为 WordWord版本,下载可任意编辑版本,下载可任意编辑间比较长 3.最末基本上实现后,发觉结果仍旧存在问题,经过分步调试,发觉了特别低级的输入错误。把HTi.weight=HTs1.weight+HTs2.weight;中的 s2 写成了 i附:/动态安排数组存储郝夫曼树 typedef struct int weight;/字符的权值 int parent,lchild,rchild;HTNode,*HuffmanTree;/动态安排数组存储郝夫曼编码 typedef char*HuffmanCode;/选
4、择 n 个(这里是 k=n)节点中权值最小的两个结点 void Select(HuffmanTree HT,int k,int s1,int s2)int i;i=1;while(i=k HTi.parent!=0)i+;/下面选出权值最小的结点,用 s1 指向其序号 s1=i;for(i=1;i=k;i+)if(HTi.parent=0HTi.weight /下面选出权值次小的结点,用 s2 指向其序号 for(i=1;i=k;i+)if(HTi.parent=0i!=s1)break;第 2 页 共 5 页本文为本文为 WordWord版本,下载可任意编辑版本,下载可任意编辑 s2=i;f
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构实验报告 实验五 数据结构 实验 报告
限制150内