电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

哈弗曼编码课程设计实验报告VIP免费

哈弗曼编码课程设计实验报告_第1页
1/19
哈弗曼编码课程设计实验报告_第2页
2/19
哈弗曼编码课程设计实验报告_第3页
3/19
目录一、实训要求……………………………………………………………………………..2二、课题分析和设计……………………………………………………………………..21、基本需求分析……………………………………………………………………2,32、对应的类………………………………………………………………................3,4,5三、主要功能界面………………………………………………………………………...51、主界面……………………………………………………………………………52、读取文章并对字符编码…………………………………………………………53、哈弗曼编码信息………………………………………………………………….64、文章编码………………………………………………………………………….65、文章译码………………………………………………………………………….66、错误处理………………………………………………………………………….7四、总结(课设心得体会)………………………………………………………………7五、附录(主要函数代码)………………………………………………………………7~14一、实训要求1、输入为:一段中文或英文的文章的文件名。2、读取文章的字符信息。3、对字符进行权值的计算。4、根据权值构造哈弗曼树。5、生成对应的编码。6、输出为:原文章的编译(译文)。7、根据已经生成的编码表,输入任意的译文可以得到原文。二、课题分析和设计1.基本需求分析:(1)在通信过程中,为了提高信道利用率,缩短信息传输时间降低传输成本,需要一编译码器。(2)此哈弗曼编码译码器应具有编码译码的双向功能,即在发送端通过编码系统对传入的数据进行编码。(3)在接收端将数据译码,将具有两项功能的编码译码器用于双工信道就可满足,双工信道的双向编译功能。(4)输入某段报文是,系统将自己完成编译输出。(5)、程序设计流程:<1>文字表述:开始进入功能选择界面,包含五种操作(1)读取文章并对字符编码。(2)哈夫曼编码信息。(3)文章编码。(4)文章译码。(5)退出程序。<2>操作:(1)给定一篇文章,统计字符出现的概率,并根据概率建立哈弗曼树,并利用哈弗曼树对字符进哈夫曼编码。(2)显示哈弗曼编码信息,包括字符和其哈弗曼编码。(3)对文章进行译码,显示译码信息,并保存。(4)对文章进行译码,显示并保存。<3>流程图:2、对应的类:<1>定义类:classElement//结点类{public:charname;//字符名文章编码哈夫曼编码信息显示编码退出程序程序主界面读取文章并对文章进行编码文章译码程序开始显示译码保存编码保存译码返回主界面返回主界面intweight;//字符权值intlchild;//左孩子intrchild;//右孩子intparent;//父结点Element(){weight=0;lchild=-1;rchild=-1;parent=-1;}~Element(){}};<2>定义字符和出现的次数:className//字符类{public:charpname;//字符名intnum;//字符出现的次数doublelweight;//字符的权值Name(){num=0;lweight=0;}~Name(){}};<3>定义字符总类总数和存储信息:classGetName//关于字符类{public:charfile_name[max2];//文件名intn;//字符的种类intsum;//字符的总数Nameletter[max1];//存储字符信息的类的数组GetName(){sum=0;n=0;}};<4>定义编码类:classCodeNode//编码类{public:charch;//存储字符charsave_code[max1];//存储编码};<5>主要功能实现类:classFunction{public:GetNameL;intfn;//定义哈夫曼数组大小ElementHuffmanT[max3];//哈夫曼数组CodeNodeCode[max1];//字符编码数组Function(){fn=0;}};三、主要功能界面:1、主界面:2、读取文章并对字符编码:3、哈弗曼编码信息:4、文章编码:5、文章译码:6、错误处理:四、总结(课设心得体会):三周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

哈弗曼编码课程设计实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部