二叉树的3种遍历及哈夫曼树的建立及哈夫曼编码

时间:2020-12-09 06:39:48
【文件属性】:

文件名称:二叉树的3种遍历及哈夫曼树的建立及哈夫曼编码

文件大小:5KB

文件格式:TXT

更新时间:2020-12-09 06:39:48

HuffmanTree

void CreateHuffmanTree(HuffmanTree &HT;,int n){ int m,j; m=2*n-1; //节点 HT=(HuffmanTree)malloc((m+1)*sizeof(HTNode));//0号节点不使用 for(int i=1;i<=m;++i){ HT[i].parent=HT[i].lchild=HT[i].rchild=0; } for(i=1;i<=n;++i){ printf("输入权值\n"); scanf("%d",&HT;[i].weight); } HT[0].weight=m; // 用0号节点保存节点数量 for(j=n+1;j<=m;++j){ //建立HuffmanTree int s1,s2; Select(HT,j-1,s1,s2); HT[s1].parent=HT[s2].parent=j; HT[j].lchild=s1;HT[j].rchild=s2; HT[j].weight=HT[s1].weight+HT[s2].weight; } }


网友评论