2022年数据结构:哈夫曼树的应用 2.pdf
《2022年数据结构:哈夫曼树的应用 2.pdf》由会员分享,可在线阅读,更多相关《2022年数据结构:哈夫曼树的应用 2.pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、y?Y?11o1t?|?#include#include#include#includea#include#define MAXVALUE 200 /*?*/#define MAXBIT 30 /*?y*/#define MAXNODE 30 /*3?y*/struct haffnode char data;int weight;int flag;int parent;/*?*/int leftchild;/*o?*/int rightchild;/*o?*/;struct haffcode int bitMAXNODE;int start;/*?e?*/char data;int weigh
2、t;/*?*/;/*o y?*/*/void pprintf(struct haffcode haffcode,int n);/*?3?o y*/void haffmantree(int weight,int n,struct haffnode hafftree,char data);/*?1t?*/void haffmancode(struct haffnode hafftree,int n,struct haffcode haffcode);/*?1t?*/void test(struct haffcode haffcode,int n);/*2a?o y*/名师资料总结-精品资料欢迎下载
3、-名师精心整理-第 1 页,共 6 页 -void end();/*?o y*/*/void haffmantree(int weight,int n,struct haffnode hafftree,char data)/*?y?an?y?aweight?1t?*/int i,j,m1,m2,x1,x2;/*1t?hafftree3?n?12D2n-1?*/for(i=0;i2*n-1;i+)if(in)hafftreei.data=datai;hafftreei.weight=weighti;/*?*/else hafftreei.weight=0;/*?*/hafftreei.data=
4、0;hafftreei.parent=0;/*3?D?*/hafftreei.flag=0;hafftreei.leftchild=-1;hafftreei.rightchild=-1;for(i=0;in-1;i+)/*11?1t?n-1?*/m1=m2=MAXVALUE;x1=x2=0;for(j=0;jn+i;j+)if(hafftreej.weightm1&hafftreej.flag=0)m2=m1;x2=x1;m1=hafftreej.weight;x1=j;else if(hafftreej.weightm2&hafftreej.flag=0)m2=hafftreej.weigh
5、t;x2=j;hafftreex1.parent=n+i;hafftreex2.parent=n+i;hafftreex1.flag=1;hafftreex2.flag=1;hafftreen+i.weight=hafftreex1.weight+hafftreex2.weight;名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 6 页 -hafftreen+i.leftchild=x1;hafftreen+i.rightchild=x2;void haffmancode(struct haffnode hafftree,int n,struct haffcode haffcod
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据结构:哈夫曼树的应用 2022 数据结构 哈夫曼树 应用
限制150内