早教吧作业答案频道 -->其他-->
需要一个详细的课程设计,代码加截图73.哈夫曼编/译码器[问题描述]利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过
题目详情
需要一个详细的课程设计,代码加截图
73.哈夫曼编/译码器
[问题描述]
利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼编/译码系统。
[基本要求]
一个完整的系统应具有以下功能:
(1)I:初始化(Initialization)。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,并将它存于文件hfmTree中。
(2)E:编码(Encoding)。利用已建好的哈夫曼树(如不在内存,则从文件htmTree中读入),对文件ToBeTran中的正文进行编码,然后将结果存入文件CodeFile中。
(3)D:译码(Decoding)。利用已建好的哈夫曼树将文件CodeFile中的代码进行译码,结果存入文件TextFile中。
(4)P:印代码文件(Print)。将文件CodeFile以紧凑格式显示在终端上,每行50个代码。同时将此字符形式的编码写入文件CodePrint中。
(5)T:印哈夫曼树(Tree Printing)。将已在内存中的哈夫曼树以直观的方式(树或凹入表形式)显示在终端上,同时将此字符形式的哈夫曼树写入文件TreePrint中。
[测试数据]
(2)用下表给出的字符集和频度的实际统计数据建立哈夫曼树,并实现以下报文的编码和译码:“THIS PROGRAM IS MY FAVORITE”。
字符 A B C D E F G H I J K L M
频度 186 64 13 22 32 103 21 15 47 57 1 5 32 20
字符 N O P Q R S T U V W X Y Z
频度 57 63 15 1 48 51 80 23 8 18 1 16 1
[实现提示]
(1)文件CodeFile的基类型可以设为子界型bit = 0..1。(2)用户界面可以设计为“菜单”方式:显示上述功能符号,再加上“Q”,表示运行Quit。请用户键入一个先把功能符,些功能执行完毕后再经菜单,直至某次用户先把了“E”为止。
(3)在程序的一次执行过程中,第一次执行I、D或C命令之后,哈夫曼树已经在内存了,不必再读入。每次执行中不一定执行I命令,因为文件hfmTree可能早已建好
73.哈夫曼编/译码器
[问题描述]
利用哈夫曼编码进行信息通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼编/译码系统。
[基本要求]
一个完整的系统应具有以下功能:
(1)I:初始化(Initialization)。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,并将它存于文件hfmTree中。
(2)E:编码(Encoding)。利用已建好的哈夫曼树(如不在内存,则从文件htmTree中读入),对文件ToBeTran中的正文进行编码,然后将结果存入文件CodeFile中。
(3)D:译码(Decoding)。利用已建好的哈夫曼树将文件CodeFile中的代码进行译码,结果存入文件TextFile中。
(4)P:印代码文件(Print)。将文件CodeFile以紧凑格式显示在终端上,每行50个代码。同时将此字符形式的编码写入文件CodePrint中。
(5)T:印哈夫曼树(Tree Printing)。将已在内存中的哈夫曼树以直观的方式(树或凹入表形式)显示在终端上,同时将此字符形式的哈夫曼树写入文件TreePrint中。
[测试数据]
(2)用下表给出的字符集和频度的实际统计数据建立哈夫曼树,并实现以下报文的编码和译码:“THIS PROGRAM IS MY FAVORITE”。
字符 A B C D E F G H I J K L M
频度 186 64 13 22 32 103 21 15 47 57 1 5 32 20
字符 N O P Q R S T U V W X Y Z
频度 57 63 15 1 48 51 80 23 8 18 1 16 1
[实现提示]
(1)文件CodeFile的基类型可以设为子界型bit = 0..1。(2)用户界面可以设计为“菜单”方式:显示上述功能符号,再加上“Q”,表示运行Quit。请用户键入一个先把功能符,些功能执行完毕后再经菜单,直至某次用户先把了“E”为止。
(3)在程序的一次执行过程中,第一次执行I、D或C命令之后,哈夫曼树已经在内存了,不必再读入。每次执行中不一定执行I命令,因为文件hfmTree可能早已建好
▼优质解答
答案和解析
最终还是靠自己找到了,关键时刻还得靠自己!!!
看了需要一个详细的课程设计,代码加...的网友还看了以下:
根据统计分析,个体服装商贩出售时装,只要按进价提高20%即可获利.但老板们常搞出进价的50%~100 2020-03-30 …
为加强防汛工作,市工程队准备对苏州河一段长为2240米的河堤进行加固.由于采用新的加固模式,现在计 2020-05-22 …
为了加强防汛工作,市工程队准备对苏州河一段长为2240米的河提进行加固,由于采用新的加固模式,现在 2020-05-22 …
关于计算机的计算1.求以下数值的十进制形式(10101.1)2=(3542)7=(4BA)16=( 2020-06-14 …
一个手机经销商计划购进某品牌的A型B型C型手机共60部,每款至少要购8部,正好用完购机款61000 2020-06-17 …
什么叫逢二进一,逢八进一,逢十六进一我想要个简化的方法,就是什么X加几X在除什么数的就是数学老师说 2020-07-04 …
要计算3.32×6,应把3.32看作,这样它就扩大到原来的倍,要使积不变,计算后的积应缩小到原数的 2020-07-16 …
快要计算机会考了,有几题想不明白,帮忙解答!.在word中,对插入的图片,不能进行的操作是()A、放 2020-11-06 …
新版《中央定价目录》于2016年1月1日实施,新目录大幅缩减政府定价范围,定价种类由原来的13种(类 2020-11-27 …
请问多次购进库存是否要计算总购进加权平均单价多次购进库存而单价都不同,在月末时要制库存表合计总购进是 2020-12-31 …