- 47
- 0
- 约9.3千字
- 约 23页
- 2021-04-15 发布于天津
- 举报
下载可编辑
下载可编辑
.
.专业.整理.
数据结构
课程设计报告
设计题目:哈夫曼树应用
专 业: 软件工程
班 级: 软件
学 生亠
学 号亠
指导教师:罗作民/翔
起止时间 :2011-07-04 — 2011-07-08
2011年春季学期
TOC \o 1-5 \h \z 一•具体任务 ….2
功能 ...2
分步实施 ..2
要求 ...2
哈夫曼编码 2
1问题描述 2
基本要求 3
3实现提示 3
\o Current Document 设计流程图 4
建立哈夫曼树 ...4
编码 ...5
译码 ... 6
主程序 ...7
设计概要 8
1 问 题 哈 夫
义 .......8..
2所实现的功能函数如下 ..8
3功能模块 ..8
五.源程序
9
六.调试分析
15
七.心得与体会
18
八.参考文献
18
一、任务
题目:哈夫曼树应用
功能:
从终端读入字符集大小 n,以及n个字符和n个权值,建立哈夫曼树并将它存于文件 hfmTree中.将已
在存中的哈夫曼树以直观的方式(比如树)显示在终端上;
禾ij用已经建好的哈夫曼树(如不在存,则从文件 htmTree中读入),对文件ToBeTran中的正文进行
编码,然后将结果存入文件 CodeFile中,并输出结果,将文件 CodeFile以紧凑格式先是在终端上,每行 50
个代码。同时将此字符形式的编码文件写入文件 CodePrint中。
利用已建好的哈夫曼树将文件 CodeFile中的代码进行译码,结果存入文件 TextFile中,并输出结果。
分步实施:
1) 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;
2) 完成最低要求:完成功能 1;
3) 进一步要求:完成功能 2和3。有兴趣的同学可以自己扩充系统功能。
要求:
1) 界面友好,函数功能要划分好
2) 总体设计应画一流程图
3) 程序要加必要的注释
4) 要提供程序测试方案
5) 程序一定要经得起测试, 宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。
、哈夫曼编码
问题描述
利用赫夫曼编码进行通信可以大大提高信道利用率, 缩短信息传输时间, 降低传输成本。这要求在
发送端通过一个编码系统对待传输数据预先编码, 在接收端将传来的数据进行译码 (复原)。对于双工
信道(即可以双向传输信息的信道),每端都需要一个完整的编 /译码系统。试为这样的信息收发站编
写一个赫夫曼码的编/译码系统。
基本要求
一个完整的系统应具有以下功能:
(1) I :初始化(Initialization )。从终端读入字符集大小 n,以及n个字符和n个权值,建立赫夫曼
树,并将它存于文件 hfmTree中。
⑵E:编码(Encoding )。利用已建好的赫夫曼树 (如不在存,则从文件hfmTree中读入),对文件ToBeTran 中的正文进行编码,然后将结果存入文件 CodeFile中。
⑶D :译码(Decoding )。利用已建好的赫夫曼树将文件 CodeFile中的代码进行译码,结果存入文件
Textfile 中。
实现提示
编码结果以文本方式存储在文件 Codefile中。
用户界面可以设计为“菜单”方式:显示上述功能符号,再加上“ Q,表示退出运行 Quit。请用
户键入一个选择功能符。此功能执行完毕后再显示此菜单,直至某次用户选择了“ Q”为止。
在程序的一次执行过程中,第一次执行 I , D或C命令之后,赫夫曼树已经在存了,不必再读入。
每次执行中不一定执行 I命令,因为文件hfmTree可能早已建好。
三、设计流程图
建立哈夫曼树:
Ren tur n 0 m=2* n-1
i=1;i=n;++i
输入字符与权值
While(getchar()= ”/n ”
1 F
*
1 r
*
HT[i].ch=z
HT[i] .weight
=w
HT[i].pare nt =0
HT[i].lchild= 0
HT[i].rchild =0
编码:
译码:
主程序:
四、概要设计
问题哈夫曼的定义:
哈夫曼树节点的数据类型定义为:
typedef struct{ // 赫夫曼树的结构体
char ch;
int weight; // 权值
int parent,lchild,rchild;
}htnode,*hfmtree;
所实现的功能函数如下
1、 void hfmcoding(hfmtree HT,hfmcode HC,int n)初始化哈夫曼树, 处理 InputHuffman(Huffman
Hfm)函数得到的数据,按照哈夫曼规则建立 2叉树。此函数块调用了 Select ()函数。
2、 void Select(hfmtr
您可能关注的文档
- 并联六自由度运动平台.docx
- 国际会展中心监控系统方案.docx
- 国际结算复习重点.docx
- 国际物流管理课程设计报告书.docx
- 国家助学贷款学生答题考试-试卷.docx
- 国贸实务知识点提纲.docx
- 国内电子图书出版产业发展综述.docx
- 国网营销服务专业计算题.docx
- 国有土地房屋征收规范性文本.docx
- 哈夫曼文件压缩实验报告.docx
- 2025年新能源汽车铝合金型材表面处理报告.docx
- 2025_2026学年新教材高中历史第四单元资本主义制度的确立9资产阶级革命与资本主义制度的确立课时作业含解析新人教版必修中外历史纲要下.doc
- 2026版高考历史一轮训练课后限时集训10近代西方民主政治的确立与发展含解析人民版.doc
- 2025年光伏支架轻量化研发趋势与材料创新报告.docx
- 2025_2026学年新教材高中英语UNIT3SPORTSANDFITNESS预习新知早知道学案含解析新人教版必修第一册.doc
- 初中道德与法治八年级上册《爱我中华》单元教学设计(1).docx
- Unit9IlikemusicthatIcandancetoSectionA(3a3c)(教学课件)人教版(0)九年级英语全册().pptx
- 四年级下册《我的“自画像”》习作指导课教学设计——基于例文支架的精准表达训练.docx
- 星火燎原:新中国“两弹一星”伟业的奠基与精神传承.docx
- 中考英语一轮复习:解锁单项选择的逻辑与策略(第一讲).docx
最近下载
- 液化气站安全应急逃生演练方案及流程.docx VIP
- 平安产险黑龙江省中央财政玉米种植完全成本保险条款.docx VIP
- CECS 96:97 基坑土钉支护技术规程.pdf VIP
- 商渔船防碰撞课件.pptx VIP
- 不间断电流设备(UPS)第3部分:确定性能的方法和试验要求.PDF VIP
- 液氨制冷企业安全管理要求.docx
- gjb 368b-2022 装备维修性工作通用要求.docx VIP
- 八年级下册第四单元写作《撰写演讲稿》课堂实录 .pdf VIP
- 2025年重庆巴蜀中学校中考三模九年级下数学模拟试题.pdf VIP
- 2023年重庆市渝中区巴蜀中学校中考三模数学试题(含解析).doc VIP
原创力文档

文档评论(0)