【正文】
]是ht[p]的左孩子,則生成代碼0,否則生成代碼1*/ c=p。i=n。 }}void huffmancodes(huffmantree ht,huffmancode hcd) /*根據(jù)huffman樹ht求huffman編碼*/{int c,p,i。i=m。} min1=ht[j].weight。 } printf(\n)。i++) {ht[i].weight=0。 /*哈夫曼樹結(jié)點類型*/typedef htnode huffmantree[m+1]。typedef htnode huffmantree[m+1]。數(shù)據(jù)結(jié)構(gòu)課程設(shè)計程序設(shè)計(大作業(yè))報告課程名稱:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計 設(shè)計題目:哈夫曼編碼器 院 系:信息技術(shù)學(xué)院 班 級:計算機科學(xué)與技術(shù)2 班設(shè) 計 者:郭彩丁 學(xué) 號:201011010205 指導(dǎo)教師:王亞寧 設(shè)計時間: 昆明學(xué)院昆明學(xué)院課程設(shè)計(大作業(yè))任務(wù)書姓 名:郭彩丁 院 系:信息技術(shù)學(xué)院專 業(yè):計算機科學(xué)與技術(shù)專業(yè) 學(xué) 號:201011010205 任務(wù)起止日期: 課程設(shè)計題目:哈夫曼編碼器 課程設(shè)計要求:(1)初始化:鍵盤輸入n個字符和n個權(quán)值,建立哈夫曼樹(2)編碼:利用建好的huffman樹生成huffman編碼(3)輸出編碼(4)字符和頻度如下: ① 字符:空格 A B C D E F G H I J K L M N O P Q 頻度:186 64 13 22 32 103 21 15 47 57 1 2 32 20 57 63 15 1② 字符:R S T U V W X Y Z 頻度:48 51 80 23 8 18 1 16工作計劃及安排(1)在上機之前選題(2)選擇合適的數(shù)據(jù)結(jié)構(gòu)(3)結(jié)點結(jié)構(gòu)的設(shè)計(4)算法設(shè)計與分析(5)程序設(shè)計、實現(xiàn)、調(diào)試(6)提交課程設(shè)計報告指導(dǎo)教師簽字 年 月 日 課程設(shè)計(大作業(yè))成績學(xué)號:201011010205 姓名:郭彩丁 指導(dǎo)教師:王亞寧 老師課程設(shè)計題目: 哈夫曼編碼器 總結(jié): 通過此次的課程設(shè)計使我認(rèn)識了哈夫曼樹的建立與應(yīng)用,復(fù)習(xí)了數(shù)據(jù)結(jié)構(gòu)中的樹的存儲結(jié)構(gòu),怎樣構(gòu)造哈夫曼樹以及用哈夫曼樹進行編碼。 /*左、右孩子及雙親的下標(biāo)*/}htnode。 /*左、右孩子及雙親的下標(biāo)*/}htnode。i=m。ht[i].we