- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构第06章_树和二叉树
2)前缀编码 若对某一字符集进行不等长编码,则要求字符集中任一字符的编码都不能是其他字符编码的前缀。符合此要求的编码叫做前缀编码。 如何设计前缀编码? 利用二叉树设计二进制的前缀编码 如何得到电文总长最短的二进制前缀编码呢? 0 1 a b c d 1 1 0 0 假设有一棵如左图所示的二叉树,四个叶结点分别表示A、B、C、D四个字符,且约定左分支表示字符‘0’,右分支表示字符‘1’,则可以从根结点到叶子结点的路径上以分支字符组成的字符串作为该叶子结点的编码。可以证明,如此得到的必为二进制前缀编码。 3)赫夫曼编码 设计电文总长最短的二进制前缀编码即: 以 n种字符出现的频率作权,设计一棵赫夫曼树的问题,由此得到的二进制前缀编码称赫夫曼编码。 例:设通信用的电文由字符集{a,b,c,d,e,f,g,h}中的字母构成,这8个字母在电文中出现的概率分别为 { 0.07, 0.19, 0.02, 0.06, 0.32, 0.03, 0.21, 0.10 },试为这8个字母设计哈夫曼编码。 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.17 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.17 0.28 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.17 0.28 0.40 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.17 0.28 0.40 0.60 0.07 0.19 0.02 0.06 0.32 0.03 0.21 0.10 0.05 0.11 0.17 0.28 0.40 0.60 1.00 0 0 0 0 0 0 0 1 1 1 1 1 1 1 a = 1010 b = 00 c = 10000 d = 1001 e = 11 f = 10001 g = 01 h = 1011 b g e d a h c f typedef struct { unsigned int weight; unsigned int parent,lchild,rchild; } HTNode, *HuffmanTree; //动态分配数组存储赫夫曼树 typedef char **HuffmanCode; 建立赫夫曼树及求赫夫曼编码的算法 赫夫曼树没有度为1的结点,则一棵有n个叶子结点的赫夫曼树共有2n-1个结点,可以存储在一个大小为2n-1的一维数组中。 由于在构造赫夫曼树之后,为求编码需从叶子结点出发走一条从叶子到根的路径;而为译码需从根出发走一条从根到叶子的路径。所以,每个结点既需知道双亲的信息,又需知道孩子结点的信息。 void HuffmanCoding(HuffmanTree HT,HuffmanCode HC,int *w, int n) {//w存放n个字符的权值,构造赫夫曼树HT,并求出n个字符的赫夫曼编码HC if (n=1) return; // n为字符数目, m=2*n-1; // m为结点数目 HT = (HuffmanTree)malloc((m+1)*sizeof(HTNode)); //HT存放Huffman树结构,0号单元未用,其余前n个单元 //存放树的叶子结点,n-1个单元存放内部结点 for (p=HT, i=1; i=n; ++i,++p,++w) { p-weight = *w; p-parent=0; p-lchild=0; p-rchild=0; } // *p={*w,0,0,0};初始化HT中的叶结点循环退出时i=n+1; for (; i=m;++i,++p) { p-weight = 0; p-parent=0;
您可能关注的文档
- 数值计算方法第4章-.ppt
- 数值计算方法-第9章-常微分方程数值解.ppt
- 数值计算:函数逼近.ppt
- 数值计算方法与算法第0章.ppt
- 数制 码制.ppt
- 数值计算方法第01章误差.ppt
- 数字万用表测电压.ppt
- 数字信号处理B实验指导书.doc
- 数字信号处理_习题与解答.ppt
- 数字信号处理07 第七章 有限单位冲激响应(FIR)数字滤波器的设计方法.ppt
- 湖南省邵东市创新高级中学2025-2026学年高二上学期11月期中考试政治试题(含解析).docx
- 湖南省益阳高平教育集团2025-2026学年高二上学期期中考试历史试题(解析版).docx
- 广东省深圳高级中学2025-2026学年高一第一学期期中测试英语试题.docx
- 湖南省永州市东安县2025—2026年九年级上学期11月期中考试道德与法治试卷.docx
- 湖南省张家界市慈利县2025-2026学年七年级上学期期中考试历史试题(含解析).docx
- 湖南省长沙市一中广雅中学2025-2026学年高二上学期11月期中物理试题(含解析).docx
- 湖南省衡阳市衡阳县第二中学2025-2026学年高一上学期11月期中考试政治试题.docx
- 湖南省娄底市2025-2026学年九年级上学期11月期中历史试题(含答案).docx
- DB1306T 294-2025检验检测机构服务质量提升指南.pdf
- DB1306T 282-2025零余子做种栽山药生产技术规程.pdf
最近下载
- 《生产经营单位安全生产培训规范》江苏省地方标准DB32T-4530-2023.pptx VIP
- 纳米乳与亚微乳课件.pptx VIP
- 一年级语文上册24秋《阳光同学全优好卷》.pdf
- 《习作:那次经历真难忘》优质课件.pptx VIP
- 【行业标准】NBT 35004-2013 水力发电厂自动化设计技术规范.pdf VIP
- 艾滋病病毒抗体快速检测技术手册(2011年版).doc VIP
- DB13T 678-2005 蛋种鸡场建设规范.docx VIP
- 食品的生物性污染.pptx VIP
- 必威体育精装版党员基本信息表(电子版).docx VIP
- (人教版)八年级地理上册 第四章 工业.pptx VIP
有哪些信誉好的足球投注网站
文档评论(0)