标签:img inf src 二叉树 相同 规划 http 不包含 没有
课程:《程序设计与数据结构》
班级: 1823
姓名: 王美皓
学号:20182322
实验教师:王志强
实验日期:2019年11月15日
必修/选修: 必修
设有字符集:S={a,b,c,d,e,f,g,h,i,j,k,l,m,n.o.p.q,r,s,t,u,v,w,x,y,z}。
给定一个包含26个英文字母的文件,统计每个字符出现的概率,根据计算的概率构造一颗哈夫曼树。并完成对英文文件的编码和解码。
要求:
准备一个包含26个英文字母的英文文件(可以不包含标点符号等),统计各个字符的概率
构造哈夫曼树
对英文文件进行编码,输出一个编码后的文件
对编码文件进行解码,输出一个解码后的文件
撰写博客记录实验的设计和实现过程,并将源代码传到码云
把实验结果截图上传到云班课
1、对给定的n个权值{W1,W2,W3,...,Wi,...,Wn}构成n棵二叉树的初始集合F={T1,T2,T3,...,Ti,...,Tn},其中每棵二叉树Ti中只有一个权值为Wi的根结点,它的左右子树均为空。(为方便在计算机上实现算法,一般还要求以Ti的权值Wi的升序排列。)
2、在F中选取两棵根结点权值最小的树作为新构造的二叉树的左右子树,新二叉树的根结点的权值为其左右子树的根结点的权值之和。
3、从F中删除这两棵树,并把这棵新的二叉树同样以升序排列加入到集合F中。
4、重复二和三两步,直到集合F中只有一棵二叉树为止。
实验截图
标签:img inf src 二叉树 相同 规划 http 不包含 没有
原文地址:https://www.cnblogs.com/wmh20182322/p/11914746.html