版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、軟件學(xué)院設(shè)計軟件學(xué)院設(shè)計性實驗報實驗報告專業(yè):.年級班級:2012—2013學(xué)年第一學(xué)期課程名稱數(shù)據(jù)結(jié)構(gòu)指導(dǎo)教師本組成員學(xué)號姓名實驗地點實驗時間第十二、十三、十四周項目名稱哈夫曼編譯碼系統(tǒng)的設(shè)計與實現(xiàn)實驗類型設(shè)計性1問題問題描述:描述:利用哈夫曼編碼進行通信可以大大提高信道利用率,縮短信息傳輸時間,降低傳輸成本。但是,這要求在發(fā)送端通過一個編碼系統(tǒng)對待傳數(shù)據(jù)預(yù)先編碼,在接收端將傳來的數(shù)據(jù)進行譯碼(解碼)。對于雙工信道(即可以雙向傳輸信息
2、的信道),每端都需要一個完整的編譯碼系統(tǒng)。試為這樣的信息收發(fā)站設(shè)計一個哈夫曼編譯碼系統(tǒng)。2一個完整的系一個完整的系統(tǒng)應(yīng)統(tǒng)應(yīng)具有以下功能:具有以下功能:1)初始化(Initialzation)。從數(shù)據(jù)文件DataFile.data中讀入字符及每個字符的權(quán)值,建立哈夫曼樹HuffTree;2)編碼(EnCoding)。用已建好的哈夫曼樹,對文件ToBeTran.data中的文本進行編碼形成報文,將報文寫在文件Code.txt中;3)譯碼(D
3、ecoding)。利用已建好的哈夫曼樹,對文件CodeFile.data中的代碼進行解碼形成原文,結(jié)果存入文件Textfile.txt中;4)輸出(Output):輸出DataFile.data中出現(xiàn)的字符以及各字符出現(xiàn)的頻度(或概率);輸出ToBeTran.data及其報文Code.txt;輸出CodeFile.data及其原文Textfile.txt;要求:所設(shè)計的系統(tǒng)應(yīng)能在程序執(zhí)行的過程中,根據(jù)實際情況(不同的輸入)建立DataF
4、ile.data、ToBeTran.data和CodeFile.data三個文件,以保證系統(tǒng)的通用性。一、一、實驗實驗?zāi)康哪康?、掌握哈夫曼編碼原理;2、熟練掌握哈夫曼樹的生成方法;3、理解數(shù)據(jù)編碼壓縮和譯碼輸出編碼的實現(xiàn)。二、二、實驗實驗要求要求實現(xiàn)哈夫曼編碼和譯碼的生成算法。三、三、實驗實驗內(nèi)容內(nèi)容先統(tǒng)計要壓縮編碼的文件中的字符字母出現(xiàn)的次數(shù),按字符字母和空格出現(xiàn)的概率對其進行哈夫曼編碼,然后讀入要編碼的文件,編碼后存入另一個文件;
5、接著再調(diào)出編碼后的文件,并對其進行譯碼輸出,最后存入另一個文件中。typedefHuffmanCode動態(tài)分配數(shù)組存儲赫夫曼編碼表動態(tài)分配數(shù)組存儲赫夫曼編碼表str[9]=abcdefghintmvoid(HuffmanTreef(j=1j=s2)s1=HT[j].weightmin1=jelses2=HT[j].weightmin2=js1=min1s2=min2voidPrint1(HuffmanTreeHT)intiprintf(
6、“建立好的赫夫曼樹的存儲情況:建立好的赫夫曼樹的存儲情況:n“)printf(“存儲單元字符權(quán)值雙親左孩子右孩子存儲單元字符權(quán)值雙親左孩子右孩子n“)f(i=1i=mi)printf(“%4d%c%4d%4d%d%dn“iHT[i].chHT[i].weightHT[i].parentHT[i].lchildHT[i].rchild)voidPrint2(HuffmanCodeHC)intiprintf(“各個字符的編碼如下:各個字符的
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)結(jié)構(gòu)實驗三哈夫曼樹實驗報告
- 數(shù)據(jù)結(jié)構(gòu)赫夫曼樹2
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計----赫夫曼樹
- 數(shù)據(jù)結(jié)構(gòu)-赫夫曼樹-課程設(shè)計
- 赫夫曼樹結(jié)構(gòu)實驗報告
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(赫夫曼樹的建立)
- 數(shù)據(jù)結(jié)構(gòu)實驗報告--樹的遍歷
- 實驗三哈夫曼樹實驗報告
- 赫夫曼編譯碼器的實現(xiàn)數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告
- 文件加密-赫夫曼算法-數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告
- 哈夫曼樹_數(shù)據(jù)結(jié)構(gòu)課程設(shè)計
- 哈夫曼樹_數(shù)據(jù)結(jié)構(gòu)課程設(shè)計
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計avl樹實現(xiàn)及其分析實驗報告
- 數(shù)據(jù)結(jié)構(gòu)實驗報告-二叉樹的實現(xiàn)與遍歷
- 應(yīng)用數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---哈夫曼樹
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---赫夫曼樹的建立及在電報編碼中的應(yīng)用
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---哈夫曼樹的應(yīng)用
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--哈夫曼樹的應(yīng)用
- 赫夫曼編譯碼器數(shù)據(jù)結(jié)構(gòu)課程設(shè)計
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--- 哈夫曼樹的應(yīng)用
評論
0/150
提交評論