1 / 7
文档名称:

哈夫曼树源代码.docx

格式:docx   大小:23KB   页数:7页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

哈夫曼树源代码.docx

上传人:文库旗舰店 2020/4/17 文件大小:23 KB

下载得到文件列表

哈夫曼树源代码.docx

相关文档

文档介绍

文档介绍:#include<iostream>#include<string>#include<fstream>usingnamespacestd;#defineMax200//最大结点数目#defineINT10000charch[Max];//叶子结点信息(字符)inti,w[Max];//w为输入的权值数组typedefstruct{ unsignedintweight;//权值 unsignedintparent,lchild,rchild;}HTNode,*HuffmanTree;//动态分配数组存储赫夫曼树typedefchar**HuffmanCode;//动态分配数组存储赫夫曼编码表voidHuffmanCoding(HuffmanTree&HT,HuffmanCode&HC,int*w,intn){//w存放n个字符的权值(均>0),构造赫夫曼树HT,并求出n个字符的赫夫曼编码HC。 ints1,s2,j,min1,min2; if(n<=1) return; intm=2*n-1; HT=newHTNode[m+1];//0号单元未用 for(i=1;i<=n;++i)//赫夫曼树叶子结点的初始化 {  HT[i].weight=w[i]; HT[i].parent=0;  HT[i].lchild=0;    HT[i].rchild=0;  } for(i=n+1;i<=m;++i)//非叶子结点的初始化 {   HT[i].weight=0;  HT[i].parent=0;   HT[i].lchild=0;  HT[i].rchild=0; } for(i=n+1;i<=m;++i)//建赫夫曼树 {//在HT[1..i-1]选择parent为0且weight最小的两个结点,其序号分别为S1和S2  min1=min2=INT;  for(j=1;j<i;j++)   if(HT[j].parent==0&&(HT[j].weight<min1))   {  min1=HT[j].weight; s1=j; }     for(j=1;j<i;j++)     if(HT[j].parent==0&&(HT[j].weight<min2)&&j!=s1)  {  min2=HT[j].weight; s2=j;  }         HT[s1].parent=i;HT[s2].parent=i;   HT[i].lchild=s1;HT[i].rchild=s2;      HT[i].weight=HT[s1].weight+HT[s2].weight;   ch[i]='?';//非叶子结点的结点字符 } //从叶子到根逆向求每个字符的赫夫曼编码 HC=newchar*[n+1];//分配n个字符编码的头指针向量 char*cd=newchar[n];//分配求编码的工作空间 HT[i].lchild=s1;HT[i].rchild=s2; cd[n-1]='\0'; //编码结束符 for(i=1;i<=n;i++) //逐个字符求赫夫曼编码 {  intc,f,start=n-1;//编码结束符位置  for(c=i,f=HT[i].parent;f!=0;c=f,f=HT[f].parent)//从叶子到根逆向求编码 

最近更新

2025年安徽省马鞍山市单招职业适应性测试题库.. 62页

2025年安徽粮食工程职业学院单招职业技能测试.. 61页

2025年安徽绿海商务职业学院单招职业技能测试.. 62页

2025年安徽职业技术学院单招职业适应性测试题.. 61页

2025年安徽警官职业学院单招职业适应性测试题.. 61页

2025年安徽财贸职业学院单招职业适应性测试题.. 62页

2025年安徽邮电职业技术学院单招职业适应性测.. 62页

2025年安阳幼儿师范高等专科学校单招职业技能.. 61页

2025年安阳职业技术学院单招职业技能测试题库.. 61页

2025年安顺职业技术学院单招职业技能测试题库.. 63页

2025年定西师范高等专科学校单招职业倾向性测.. 60页

2025年宜宾职业技术学院单招职业适应性测试题.. 60页

2025年宜昌科技职业学院单招职业适应性测试题.. 63页

2025年宜春幼儿师范高等专科学校单招职业适应.. 62页

2025年宝鸡中北职业学院单招职业适应性测试题.. 62页

2025年宝鸡职业技术学院单招职业技能测试题库.. 62页

2025年宿州职业技术学院单招职业倾向性测试题.. 60页

2025年宿迁职业技术学院单招职业技能测试题库.. 63页

2025年山东传媒职业学院单招职业适应性测试题.. 60页

2025人教版七年级下学期生物练习-- 第三节 输.. 11页

2025年山东公务员行测言语理解与表达题目含答.. 175页

2025年山东劳动职业技术学院单招职业倾向性测.. 61页

2025中考复习学习计划模板汇编8篇 8页

2025年山东华宇工学院单招职业适应性测试题库.. 61页

2025年山东圣翰财贸职业学院单招职业倾向性测.. 61页

2025年山东圣翰财贸职业学院单招职业适应性测.. 60页

2025年牡丹江大学单招职业技能测试题库有完整.. 61页

2025年海南省海口市高考模拟(二)物理高频考点.. 5页

违纪违法典型案例对照剖析材料 5页

医院组织生活会批评与自我批评集合6篇 20页