版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、.廣州中醫(yī)藥大學(xué)醫(yī)學(xué)信息工程學(xué)院實 驗 報 告課程名稱:數(shù)據(jù)結(jié)構(gòu)與算法專業(yè)班級:計算機科學(xué)與技術(shù)( )級學(xué)生學(xué)號:學(xué)生姓名:實驗名稱:實驗成績:課程類別:必修 限選 公選 其它 哈夫曼編碼及應(yīng)用實驗?zāi)康模毫私夤蚵鼧涞膽?yīng)用,掌握哈夫曼樹的構(gòu)造方法及前綴碼的應(yīng)用。實驗性質(zhì):設(shè)計性,應(yīng)用性。實驗步驟: (1) 輸入一串字符,統(tǒng)計其中所有的不同字符及其個數(shù),得出每個不同字符在文中出現(xiàn)的頻率。(2) 根據(jù)每個字符頻率建立哈夫曼樹,輸出字符對應(yīng)的編碼。實驗要求 1、 實驗要求獨立完成。2、 遲交或不交的或源代碼雷同者一律不做作業(yè)登記評分。作業(yè)提交 (實驗報告寫在此處)給出含有6,8,11個字符的實例,統(tǒng)
2、計他們的頻率,畫出哈夫曼樹,并用算法驗證結(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é)點的哈弗曼樹 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024專業(yè)資產(chǎn)評估人員勞務(wù)協(xié)議
- 2024年水電工程建筑協(xié)議范本
- 2024年專業(yè)設(shè)備買賣代理協(xié)議
- 2024商業(yè)反擔(dān)保協(xié)議格式
- 2024年度樁基破樁頭工程承包協(xié)議
- 2024二人協(xié)作協(xié)議格式樣本指導(dǎo)手冊
- 2024年項目經(jīng)理職務(wù)協(xié)議樣本
- 2024年期鐵棚建設(shè)協(xié)議范本
- 2024年定制SaaS軟件銷售協(xié)議
- 2024礦產(chǎn)品交易協(xié)議條款集要
- 《阿凡達》電影賞析
- DB42-T 2286-2024 地鐵冷卻塔衛(wèi)生管理規(guī)范
- 合作伙伴合同協(xié)議書范文5份
- 小學(xué)生主題班會《追夢奧運+做大家少年》(課件)
- 公安機關(guān)人民警察高級執(zhí)法資格考題及解析
- 浙教版信息科技四年級上冊全冊教學(xué)設(shè)計
- 2024年全國職業(yè)院校技能大賽中職(中式烹飪賽項)考試題庫-下(多選、判斷題)
- 教師節(jié)感恩老師主題班會一朝沐杏雨一生念師恩因為有你未來更加光明課件
- 紅托竹蓀工廠化栽培技術(shù)規(guī)程
- 【基于Android的電商購物系統(tǒng)設(shè)計與實現(xiàn)3900字(論文)】
- YBT 189-2014 連鑄保護渣水分含量(110℃)測定試驗方法
評論
0/150
提交評論