Example #1
0
void main(){
	HuTreeLink HT;
	HuCode HC;
	int *w,n,i;
	
	printf("Please enter the amount of weight(>1):\n");
	//scanf("%d",&n);
	n = 4;
	w = (int*)malloc(n*sizeof(int));//权值数组
	printf("please enter the value of %d weight:\n",n);
	*w = 7;
	*(w+1) = 5;
	*(w+2) = 2;
	*(w+3) = 4;
	/*
	for(i=0;i<n;i++){
		scanf("%d",w+i);
	}
	*/
	
	for(i=0;i<n;i++) printf("%3d",*(w+i));
	printf("\nprint the Huffman code:\n");
	huffmanCoding(&HT,&HC,w,n);
	//输出赫夫曼编码
	for(i=1;i<=n;i++) puts(HC[i]);
}
Example #2
0
int main()
{
    int n = 5;
    //wd w[5] = (wd *) malloc (n * sizeof(wd));
    wd w[5];
    w[0].ch = 'a';
    w[0].fr = 5;
    w[1].ch = 'b';
    w[1].fr = 4;
    w[2].ch = 'c';
    w[2].fr = 3;
    w[3].ch = 'd';
    w[3].fr = 2;
    w[4].ch = 'e';
    w[4].fr = 1;
    huffmTree *HT;
    huffmCode HC;
    HC = huffmanCoding(HT, HC, w, n);
    displayHuffm(HC, n);
    return 0;
}