数据结构实验报告Screenandevaluatetheresultswithinacertainperiod,analyzethedeficiencies,learnfromthemandformCountermeasures.姓名:___________________单位:___________________时间:___________________FS实用范本|DOCUMENTTEMPLATE编号:FS-DY-46400数据结构实验报告使用备注:该资料可用于在一定周期内的结果进行筛查,评估,并对成果的不足进行分析,以便从中吸取经验教训并形成今后的对策。文档可直接下载或修改,使用时请详细阅读内容。.实验内容:实现哈夫曼编码的生成算法。二.实验目的:1、使学生熟练掌握哈夫曼树的生成算法。2、熟练掌握哈夫曼编码的方法。三.问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
描述:已知n个字符在原文中出现的频率,求它们的哈夫曼编码。1、读入n个字符,以及字符的权值,试建立一棵Huffman树。2、根据生成的Huffman树,求每个字符的Huffman编码。并对给定的待编码字符序列进行编码,并输出。四.问题的实现(1)郝夫曼树的存储
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示第2页/总5页FS实用范本|DOCUMENTTEMPLATEtypedefstruct{unsignedintweight;unsignedintparent,lchild,rchild;}HTNode,*HuffmanTree;//动态分配数组存储郝夫曼树郝夫曼编码的存储表示typedefchar**HuffmanCode;//动态分配数组存储郝夫曼编码(2)主要的实现思路:a.首先定义郝夫曼树的存储形式,这里使用了数组b.用select遍历n个字符,找出权值最小的两个c.构造郝夫曼树HT,并求出n个字符的郝夫曼编码HC总结1.基本上没有什么太大的问题,在调用select这个函数时,想把权值最小的两个结点的序号带回HuffmanCoding,所以把那2个序号设置成了引用。2.在编程过程中,在什么时候分配内存,什么时候初始化花的时间比较长3.最后基本上实现后,发现结果仍然存在问题,经过分第3页/总5页FS实用范本|DOCUMENTTEMPLATE步调试,发现了特别低级的输入错误。把HT[i].weight=HT[s1].weight+HT[s2].weight;中的s2写成了i附:动态分配数组存储郝夫曼树typedefstruct{intweight;//字符的权值intparent,lchild,rchild;}HTNode,*HuffmanTree;动态分配数组存储郝夫曼编码typedefchar**HuffmanCode;选择n个(这里是k=n)节点中权值最小的两个结点voidSelect(HuffmanTree&HT,intk,int&s1,int&s2){inti;i=1;while(iweight=*w;p->parent=p->rchild=p->lchild=0;}for(;iweight=p->parent=p->rchild=p->lchild=0;第4页/总5页FS实用范本|DOCUMENTTEMPLATE}for(i=n+1;i>n;w=(int*)malloc((n+1)*sizeof(int));//
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
权值,号单元未用ch=(char*)malloc((n+1)*sizeof(char));//记录字符,号单元未用cout<<"依次输入待编码的字符data及其权值weight"
本文档为【数据结构实验报告模板】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。