树和二叉树实验七哈夫曼编码哈夫曼编码1
问题描述设某编码系统共有n 个字符, 使用频率分别为{ w1, w2, ⋯ , wn} ,设计一个不等长的编码方案,使得该编码系统的空间效率最好
基本要求⑴ 设计数据结构;⑵ 设计编码算法;⑶ 分析时间复杂度和空间复杂度
编码#include #include using namespace std; const int Size=10,Size1=50; struct element { int weight; int lchild,rchild,parent; }; char s[Size];int w[Size],w1[Size]; int getW(char T1[]) //统计字母频率,获得权值{ char T[Size1]; strcpy(T,T1); char c;int count,k=0; for(int i=0;T[i]
='\0';i++) { count=0; if(T[i]>='a'&&T[1]h[i4]
weight) { c=i3; i3=i4; i4=c; } for(i;h[i]
weight>0;i++) { if(h[i]
parent==-1) 树和二叉树if(h[i]
weight