哈弗曼例項輸入學生資訊

2021-07-28 22:45:41 字數 800 閱讀 5019



問題描述:

//輸入學生學號和姓名,對已有的給出提示,沒有的新增進去,,最後輸出所有的奇數的學生資訊(哈弗曼類的例項)

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.collections;

namespace zhangqingqing

else

console.writeline("是否退出此次的輸入?請輸入(y-結束/n-繼續),結束後將輸出所有學號為奇數的學生");

string t = console.readline();

if (t.contains("y") || t.contains("y"))

else if (t.contains("n") || t.contains("n"))

else

}foreach (dictionaryentry item in hstable1)

,", item.key, item.value);}}

console.readkey();}}

}

執行結果:

哈弗曼編碼 哈弗曼樹

哈弗曼編碼是依賴於字元使用頻率來建立的一種編碼,通過把使用頻率低的字元分配相對較多的01編碼,而使用頻率高的分配相對較低的01編碼,來建立最小的帶權路徑長度的樹,來最大化的獲得編碼儲存空間的一種編碼規則。這個樹稱為哈弗曼樹,也稱為最優二叉樹。這樣可以確定每乙個字元的編碼不可能成為其他字元編碼的坐子串...

哈弗曼樹與哈弗曼編碼(實現)

歷史背景 1951年,霍夫曼在mit攻讀博士學位,他和修讀資訊理論課程的同學得選擇是完成學期報告還是期末考試。導師robert fano出的學期報告題目是 查詢最有效的二進位制編碼。由於無法證明哪個已有編碼是最有效的,霍夫曼放棄對已有編碼的研究,轉向新的探索,最終發現了基於有序頻率二叉樹編碼的想法,...

哈弗曼 筆試

哈弗曼編碼幾乎是所有壓縮演算法的基礎,其實這個演算法並不複雜,簡單的理解就是,如何用更短的bit來編碼資料。我們知道普通的編碼都是定長的,比如常用的ascii編碼,每個字元都是8個bit 字元 編碼 a00101001 b00101010 c00101011 這樣,計算機就能很方便的把由0和1組成的...