- 13
- 0
- 约3.86千字
- 约 8页
- 2018-10-16 发布于湖北
- 举报
数据结构赫夫曼树课程设计
《数据结构》课程设计
题目:赫夫曼树的建立
一、需求分析
众所周知,最优二叉树(赫夫曼树)在解决很多判定问题时,有着无可比拟的优势。同时,在目前,进行快速远距离通信的主要手段主要是电报,即将需传送的文字转换成由二进制的字符组成的字符串。而在文字的转换编码中,也必然要用到赫夫曼算法才能使传送的电文尽可能地短。
所以,本程序主要目的就是是利用赫夫曼算法快速生成一个普通二叉树的最优二叉树(赫夫曼树),同时本程序还可以生成对每个结点对应的赫夫曼编码。
在这个程序中主要有3个函数:
InitHaffman函数:完成对树的结点进行初始化。
Haffman函数:用于构造赫夫曼树并生成相应的赫夫曼编码。
OutputHaffman函数:输出赫夫曼树和编码。
二、概要设计
赫夫曼算法的叙述过程:
(1)根据给定的n个权值{w1,w2,……,wn}构成n棵二叉树的集合F={T1,T2,……,Tn},其中每棵二叉树Ti中只有一个带权为wi的根结点,其左右子树均空。
(2)在F中选取两棵根结点的权值最小的树作为左右子树构造一棵新的二叉树,且置新的二叉树的根结点的权值为其左、右子树上根结点的权值之和。
(3)在F中删除这两棵树,同时将新得到的二叉树加入F中。
(4)重复(2)和(3),直到F 只含一棵树为止。这棵树便是赫夫曼树。
程序大体设计流程:
定义全局变量构造赫夫曼树的存储结构定义InitHaffm
您可能关注的文档
最近下载
- 管廊脚手架专项施工方案.docx VIP
- 管廊悬空脚手架施工方案.docx VIP
- 2025年阿克苏地区温宿县某国企外包岗位招聘10人笔试备考题库及参考答案详解1套.docx VIP
- 10万吨年己二腈工艺设计.docx
- 孟子天时地利人和原文.pptx VIP
- 华侨大学《电路分析基础》2025-2026学年期末试卷.docx VIP
- 爱登堡电梯EDVF30M电气敷线图(V8.4).pdf VIP
- 华硕b8 5bios设置图解教程.pdf VIP
- 财务会计常用Excel表格模板大全-EXCEL中如何实现按多条件汇总统计(会计实例,两种方法,多函数应用技巧).pdf VIP
- 暨南大学博士后人才创新发展改革办法试行.doc VIP
原创力文档

文档评论(0)