- 30
- 0
- 约3.12千字
- 约 7页
- 2021-10-18 发布于天津
- 举报
一、 实验内容
[问题描述]
已知n个字符在原文中出现的频率,求它们的哈夫曼编码。
[基本要求]
初始化:从键盘读入n个字符,以及它们的权值,建立 Huffman
树。(具体算法可参见教材P147的算法)
编码:根据建立的Huffman树,求每个字符的Huffman
编码。
对给定的待编码字符序列进行编码。
二、 概要设计
算法设计:
要是实现哈夫曼树的操作,首先创建一个哈夫曼树,在创建哈夫 曼树的时候,对哈夫曼树的叶子和非叶子结点进行初始化,而在 建立哈夫曼树时,最难的该是选择权值最小的两个顶点,然后两 个结点的权值和作为新的权值,再选择两个权值最小的作为新的 两个结点创建一个小的二叉树的子树;创建哈夫曼树后,进行编 码,在编码过程中,先找到根,然后遍历,左孩子用0标记,右 孩子用1标记,最后将编码好的哈夫曼树进行输出,就可以知道 哈夫曼树的编码了。
流程图:
算法:
模块:
在分析了实验要求和算法分析之后,将程序分为四个功能函 数,分别如下:
首先建立一个哈夫曼树和哈夫曼编码的存储表示:
typedef struct (
int weight;
int parent,Ichild,rchiId;
char elem;
jHTNode,*HuffmanTree; arent
. =1; HT[s2]. parent=i; HT[i], lchild=sl; HT[i].rc
您可能关注的文档
最近下载
- 铁路混凝土工程施工质量验收标准.pdf VIP
- Q/CR 689.2-2019- 铁路机车、动车组通风机组-第2部分:轴流通风机组.pdf VIP
- 申菱电梯NSFC01-01A型门机控制器使用手册.pdf
- ISO19011_2026 管理体系审核指南深度解析.pptx VIP
- T∕CEA 301-2023 地铁用自动扶梯技术规范.pdf VIP
- 人教版六年级上册数学全册教学设计(配2026年秋改版教材).doc
- 长沙理工大学申报教师系列专业技术职务任职资格参评条件细则(试行).docx
- aqc临时用电接地装置隐检与平面示意图.docx VIP
- 广东省放射工作人员线上培训与考核题库与答案.docx VIP
- 焦化厂化工车间脱硫废液提盐操作规程.doc VIP
原创力文档

文档评论(0)