正确的哈夫曼树

时间:2016-01-12 10:55:05
【文件属性】:
文件名称:正确的哈夫曼树
文件大小:1KB
文件格式:CPP
更新时间:2016-01-12 10:55:05
哈夫曼树 #include #include "HuffmanTree.h" #include "HuffmanCoder.h" using namespace std; int main() { int n; cout << "---此程序实现建立哈夫曼树并求哈夫曼编码---" << endl << endl; cout << "请输入树叶结点的个数(小于等于1结束):" << endl; cin>>n; char chA[256]; int weightA[256]; int a,b; LinkList *L=new LinkList[2*n-1]; for(int i= 0 ; i < n; i++){ cout << "请输入第" << i+1 << "个字符及权值" << endl; cin >> chA[i] >> weightA[i]; } HuffmanTree ht(n,chA,weightA); //建立哈夫曼树 ht.Display(); //显示所建哈夫曼树 HuffmanCoder hc(n); hc.l_r(ht,a,b); hc.CreateBook(ht,a,b,L); //建立哈夫曼编码表 hc._CreateBook(ht,L); cout << "请输入需编码字符串(字符串中的字符须是当前对象中的字符): " << endl; cin >> chA; cout << "编码结果: " << endl; hc.Coder(chA); //对所输入的字符串进行编码,编码的结果同时放入数据文件f1中 cout << endl; hc.Decoder(ht); //对数据文件f1中的编码进行译码 cout << endl; system("pause"); return 0; }

网友评论