



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、#include<stdio.h>#include<stdlib.h>#define n 4#define m 2*n-1#define maxval 32769typedef structfloat weight;int lchild,rchild,parent; char ch;huftree;typedef structchar bitsn;int start;codetype;codetype coden;huftree treem;void hufman(huftree tree)/創建哈夫曼樹 int i,j,p1,p2; char ch; float sm
2、all1,small2,f; for(i=0;i<m;i+)/初始化所有結點 treei.parent=0; treei.lchild=0; treei.rchild=0; treei.weight=0.0; printf("請輸入結點的權值:n"); for(i=0;i<n;i+)/輸入n個結點的權值 scanf("%f",&f);treei.weight=f; printf("請輸入結點的字符:n");scanf("%c",&ch); for(i=0;i<n;i+)/輸入n個結
3、點的權值 scanf("%c",&ch);treei.ch=ch; for(i=n;i<m;i+)/進行n-1次合并,產生n-1個新結點 p1=0,p2=0;small1=maxval;small2=maxval;for(j=0;j<=i-1;j+)/找出權值最小的兩個根結點if(treej.parent=0)if(treej.weight<small1)/改變最小權與次小權的位置small2=small1;small1=treej.weight;p2=p1;p1=j;/鎖定最小權的位置 elseif(treej.weight<small2)
4、small2=treej.weight;p2=j;/鎖定次小權的位置treep1.parent=i+1;/生成的新結點為最小權與次小權的雙親treep2.parent=i+1;treei.lchild=p1+1;treei.rchild=p2+1;treei.weight=treep1.weight+treep2.weight; void creathufcode(codetype code)/由哈夫曼數構建哈夫曼編碼 int i,c,p; codetype cd; for(i=0;i<n;i+) cd.start=n; c=i+1; p=treei.parent; while(p!=0
5、) cd.start-; if(treep-1.lchild=c) cd.bitscd.start='0' else cd.bitscd.start='1' c=p; p=treep-1.parent; codei=cd; void decode(codetype code,huftree tree)/依次讀入電文,根據哈夫曼樹譯碼 int i,b; int flag=-1; i=m-1; printf("請輸入電文編碼:"); scanf("%d",&b); while(b!=flag) if(b=0) i=treei.lchild-1; else i=treei.rchild-1; if(treei.lchild=0)/找到葉節點,輸出對應字符 printf("譯碼后對應的字符:%cn",treei.ch); printf("譯碼后字符對應的權值:%f",treei.weight); i=m-1; scanf("%d",&b); if(treei.lchild!=0) print
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 優化汽車銷售公司售前與售后服務協同
- 廣告美學培訓行業深度調研及發展項目商業計劃書
- 石材藝術浮雕墻行業深度調研及發展項目商業計劃書
- 中醫文化融入思修
- 2025年低碳城市建設規劃與城市綠色建筑產業政策環境適應性分析
- 2025年低碳城市規劃與實施案例分析:城市節能減排技術
- 2025年新高二數學(人教A版暑假銜接)新課預習-2.4 圓的方程(學生版)-新高二暑假銜接
- 復古雜志風時尚攝影作
- 兒童發育行為健康教育
- 初中應用題目及答案
- 《2025聘請財務顧問合同》
- 2025年繼續教育公需課必修課考試題庫附含參考答案
- T/ZGM 002-2021家用和類似用途納濾飲用水凈化裝置
- 漸進多焦點鏡片設計特點
- 【MOOC】國際商務-暨南大學 中國大學慕課MOOC答案
- 【MOOC】大學物理-力學、電磁學-重慶大學 中國大學慕課MOOC答案
- 2024中考英語1500詞匯默寫匯總表練習(含答案)
- 死亡證明(模板)
- 申根簽證在職證明模板中英雙語
- (完整word版)A4紅色稿紙模板.doc
- 工程力學教學大綱(48學時)4頁
評論
0/150
提交評論