版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、.廣州中醫(yī)藥大學(xué)醫(yī)學(xué)信息工程學(xué)院實(shí) 驗(yàn) 報 告課程名稱:數(shù)據(jù)結(jié)構(gòu)與算法專業(yè)班級:計算機(jī)科學(xué)與技術(shù)( )級學(xué)生學(xué)號:學(xué)生姓名:實(shí)驗(yàn)名稱:實(shí)驗(yàn)成績:課程類別:必修 限選 公選 其它 哈夫曼編碼及應(yīng)用實(shí)驗(yàn)?zāi)康模毫私夤蚵鼧涞膽?yīng)用,掌握哈夫曼樹的構(gòu)造方法及前綴碼的應(yīng)用。實(shí)驗(yàn)性質(zhì):設(shè)計性,應(yīng)用性。實(shí)驗(yàn)步驟: (1) 輸入一串字符,統(tǒng)計其中所有的不同字符及其個數(shù),得出每個不同字符在文中出現(xiàn)的頻率。(2) 根據(jù)每個字符頻率建立哈夫曼樹,輸出字符對應(yīng)的編碼。實(shí)驗(yàn)要求 1、 實(shí)驗(yàn)要求獨(dú)立完成。2、 遲交或不交的或源代碼雷同者一律不做作業(yè)登記評分。作業(yè)提交 (實(shí)驗(yàn)報告寫在此處)給出含有6,8,11個字符的實(shí)例,統(tǒng)
2、計他們的頻率,畫出哈夫曼樹,并用算法驗(yàn)證結(jié)果。624D1C11B2A21)1代碼寫在此處#includestdio.h#include#define MAXNODE 20#define MAXLEAF 30#define MAXINT 234567struct HtNodeint ww;int parent,lchild,rchild;struct HtTreeint root;struct HtNode htMAXNODE;typedef struct HtTree PHtTree;PHtTree *huffman(int m,int *w);void main() char sMAXNOD
3、E; int m=0;char wMAXNODE; int count=0; int t=0; int aMAXNODE; int *b; char *code;code=(char *)malloc(sizeof(char); b=(int *)malloc(sizeof(int); printf(請輸入字符竄:n); for(int i=0;iMAXNODE;i+) scanf(%c ,&si); +count; if(si=#) break; for(i=0;icount-1;i+) ai=0;bm=0; for(int j=0;jcount-1;j+) if(si=sj&ij) ai=
4、ai+1; si=NULL; if(si!=NULL) bm=ai; wm=si; m+; printf(%c的個數(shù)%d,頻率為%fn,wm-1,bm-1,(float)ai/(count-1); PHtTree *pht; pht=(PHtTree *)malloc(sizeof(PHtTree); pht=huffman(m,b); for(i=0;ihti.ww); printf(n);for(i=0;ihti.parent;while(p!=-1)if(pht-htp.lchild=c) codet=0; t+;if(pht-htp.rchild=c)codet=1; t+; pht-
5、root-; c=p;p=pht-htp.parent;printf(%c的編碼是,wi);for(int y=t-1;y=0;y-)printf(%c,codey);printf(n);PHtTree *huffman(int m,int *w)/構(gòu)造具有m各節(jié)點(diǎn)的哈弗曼樹 PHtTree *pht; int i,j,x1,x2,m1,m2; pht=(PHtTree *)malloc(sizeof(PHtTree); if(pht=NULL) printf(out of space!n); return pht; for(i=0;ihti.lchild=-1; pht-hti.rchild=-1; pht-hti.parent=-1;if(ihti.ww=wi;elsepht-hti.ww=-1;for(i=0;im-1;i+)m1=MAXINT;m2=MAXINT;x1=-1;x2=-1;for(j=0;jhtj.wwhtj.parent=-1)m2=m1;x2=x1;m1=pht-htj.ww;x1=j;else if(pht-htj.wwhtj.parent=-1)m2=pht-htj.ww; x2=j;pht-htx1.parent=m+i;pht-htx2.parent=m+i;pht-htm+i.ww=m1+m2;pht-htm+i.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度城市綠化養(yǎng)護(hù)服務(wù)合同
- 2025年度智能家居租賃服務(wù)合同范本
- 2025年度廣東建筑行業(yè)碳排放交易合同
- 2025年度智能穿戴設(shè)備研發(fā)合同完工證明書
- 2025年度工藝品市場調(diào)研與分析服務(wù)合同
- 2025年度工業(yè)機(jī)器人控制系統(tǒng)銷售與維護(hù)服務(wù)合同
- 2025年度城市供熱系統(tǒng)變壓器改造工程承包合同
- 2025年度個人租汽車給公司高端用車服務(wù)合同
- 2025年度獨(dú)立董事企業(yè)人力資源顧問合同
- 2025年度人工智能技術(shù)員高級聘用合同范本文檔
- 電力安全工作規(guī)程(電網(wǎng)建設(shè)部分)2023年
- 呆死帳的發(fā)生與預(yù)防課件
- 10000中國普通人名大全
- 導(dǎo)數(shù)常見函數(shù)圖像
- 起重機(jī)械安裝吊裝危險源辨識、風(fēng)險評價表
- 華北理工兒童口腔醫(yī)學(xué)教案06兒童咬合誘導(dǎo)
- 中國建筑項(xiàng)目管理表格
- 高一3班第一次月考總結(jié)班會課件
- 公共政策分析導(dǎo)論教學(xué)課件匯總完整版電子教案
- 我國油菜生產(chǎn)機(jī)械化技術(shù)(-119)
- 大跨度斜拉橋上部結(jié)構(gòu)施工技術(shù)(圖文并茂)
評論
0/150
提交評論