?? 測試.cpp
字號:
#include <stdio.h>
#include <stdlib.h>
#define MaxValue 10000 /*設定的權值最大值*/
#define MaxBit 20 /*設定的最大編碼位數*/
#define MaxN 50 /*設定的最大結點個數*/
#include "Haffman.h" /*包含文件Haffman.h*/
void main(void)
{
int i,j,n=15;
int weight[]={1,3,5,7,9,11,13,15,17,19,21,23,25,27,29};
HaffNode *myHaffTree=(HaffNode*)malloc(sizeof(HaffNode)*(2*n+1));
Code *myHaffCode=(Code*)malloc(sizeof(Code)*n);
if(n>MaxN)
{
printf("給出的n越界,修改MaxN!\n");
exit(1);
}
Haffman(weight,n,myHaffTree);
HaffmanCode(myHaffTree,n,myHaffCode);
/*輸出每個葉結點的哈夫曼編碼*/
for(i=0;i<n;i++)
{
printf("輸入的葉結點的權值為:Weight=%d 輸出葉結點對應的哈夫曼編碼為:Code=", myHaffCode[i].weight);
for(j=myHaffCode[i].start+1;j<n;j++)
printf("%d", myHaffCode[i].bit[j]);
printf("\n");
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -