數(shù)據(jù)結(jié)構(gòu) 哈夫曼編碼實(shí)驗(yàn)報(bào)告_第1頁(yè)
數(shù)據(jù)結(jié)構(gòu) 哈夫曼編碼實(shí)驗(yàn)報(bào)告_第2頁(yè)
數(shù)據(jù)結(jié)構(gòu) 哈夫曼編碼實(shí)驗(yàn)報(bào)告_第3頁(yè)
數(shù)據(jù)結(jié)構(gòu) 哈夫曼編碼實(shí)驗(yàn)報(bào)告_第4頁(yè)
數(shù)據(jù)結(jié)構(gòu) 哈夫曼編碼實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)課名稱:數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)實(shí)驗(yàn)名稱:文件壓縮問題班級(jí): 20132012學(xué)號(hào):名字:時(shí)間: 2015-6-9一、問題的說明Huffman編碼是一般的數(shù)據(jù)壓縮技術(shù),通過對(duì)數(shù)據(jù)文件進(jìn)行Huffman編碼能顯著縮短文件的傳送長(zhǎng)度,提高信道利用率和傳送效率。 要求采用霍夫曼編碼的原理,統(tǒng)一文本文件中的字符出現(xiàn)的字?jǐn)?shù),以字?jǐn)?shù)為權(quán)重對(duì)文件進(jìn)行霍夫曼編碼,從而實(shí)現(xiàn)壓縮文件的目的,以及使用霍夫曼編碼來(lái)進(jìn)行譯碼/解壓縮。二、數(shù)據(jù)結(jié)構(gòu)修訂首先定義結(jié)構(gòu)強(qiáng)制頭部。無(wú)標(biāo)記卡片b; /記錄文字長(zhǎng)計(jì)數(shù); /權(quán)重入伙、lch、rch; /定義父母、左子、右子卡爾比特(256 ); /存儲(chǔ)霍夫曼編碼的數(shù)組是標(biāo)題;標(biāo)題。

2、/頭部至少需要設(shè)置512個(gè)。 節(jié)點(diǎn)最多256個(gè),總節(jié)點(diǎn)數(shù)最多511個(gè)三、算法設(shè)定修訂輸入壓縮的文件讀出文件,與糾正字符頻率的字符頻率相應(yīng),利用Huffman編碼思想制作出Huffman樹,利用制作出的Huffman樹決定與字符對(duì)應(yīng)的編碼,對(duì)文件進(jìn)行壓縮編碼壓縮設(shè)定修正流程圖如圖1.1所示。建立霍夫曼樹霍夫曼樹解密對(duì)二進(jìn)制文件進(jìn)行解碼修正文字,修正文字的權(quán)重n基于霍夫曼樹的編碼壓縮編碼生成霍夫曼樹生成對(duì)應(yīng)的文件生成二進(jìn)制文件圖1.1設(shè)定訂正流程圖(1)壓縮文件通過輸入要壓縮的文本文件名(帶路徑)作為權(quán)重,如:D:lulu.txt統(tǒng)一修訂文本文件中的每個(gè)字符數(shù),生成霍夫曼樹通過霍夫曼樹對(duì)文本文件進(jìn)

3、行編碼,生成壓縮文件。 壓縮文件名=文本文件名. COD例如:D:lulu.COD壓縮文件內(nèi)容=霍夫曼樹的核心內(nèi)容編碼順序for (英寸=0; i256; 一)。標(biāo)題:計(jì)數(shù)=0; /初始化權(quán)重標(biāo)頭,標(biāo)頭,標(biāo)頭。 /初始化字符是ifstream信息(文件名,IOs :3360 in|IOs :3360二進(jìn)制);英文名: infile.peek!=關(guān)閉)。infile.read (char * )暫時(shí),sizeof (未指定的卡) ); /讀入文字暫停;暫停; /修訂對(duì)應(yīng)節(jié)點(diǎn)字符權(quán)重flength; /統(tǒng)一修訂文件長(zhǎng)度是infile.close (); /關(guān)閉文件for(i=0; i256-1; i ) /將節(jié)點(diǎn)進(jìn)行冒泡排序,將權(quán)重大的放在上面,編碼時(shí)的效率很高for (英寸j=0; j256-1-i式戰(zhàn)斗機(jī); j )處理緩沖區(qū),直到小于if(headerj.count=256)/256位,然后讀取緩沖區(qū)。for(i=0; 中斷;中斷; /寫入達(dá)到原文件的長(zhǎng)度后結(jié)束/whileif (讀取=(長(zhǎng)度-8)/*代碼長(zhǎng)度*/| |寫入長(zhǎng)度=長(zhǎng)度)斷開。 /

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論