哈夫曼編碼
哈夫曼編碼的目的就是資料壓縮,加密解密,將出現頻率低的放在二叉樹的靠最下面的層,從而使頻率高的能被更快的找到,實現資料壓縮的功能
主要的編碼過程是:
1.由於題目中這個頻率是排好序的,可以看做有序序列。先取兩個最小(a,b)作為乙個新結點n1的兩個子結點,相對較小的是左孩子,新結點的頻率就是a,b兩個頻率的相加,即4+6=10;然後將新結點n1替換a,b插入有序序列,整個就是;
2.然後再取最小的兩個結點(n1,c),產生的新結點n2的頻率為10+11=21,繼續替換n1,c插入有序序列,整個就是;
3.然後再取最小的兩個結點(d,e),產生的新結點n3的頻率為13+15=28,繼續替換d,e插入有序序列,序列就剩2個結點,小的作為左結點,大的是右節點,共同指向根結點t,最後哈夫曼樹就可畫出來了。
最後將左分支改為0,右分支改為1,哈夫曼編碼就是從樹根到葉子所經過的0和1組成的,從這裡可以看出,a的頻率最低,出現在最低層的葉子結點,達到資料壓縮的目的
小紅書2020校招前端筆試題卷一
薯隊長寫了n篇筆記,編號從1 n,每篇筆記都獲得了不少點讚數。薯隊長想從中選出一些筆記,作乙個精選集合。挑選的時候有兩個規則 1.不能出現連續編號的筆記。2.總點贊總數最多 如果滿足1,2條件有多種方案,挑選筆記總數最少的那種 輸入描述 輸入包含兩行。第一行整數n表示多少篇筆記。第二行n個整數分別表...
校招需要看的書 鞏固的知識
感謝教練,學長們,隊友,lollipop,貓哥,李哥,表哥,雞哥,樣樣,鹹糖,茗記,明沙,嘻,樹佬 排名不分先後 等等太多太多的人的幫助。找工作可能真的蠻焦慮的吧,不過還好認識了一群同路的人,可以一起努力,互相督促,互相吹水 很多面試官和我說 你是科班的,那麼作業系統,計算機網路,資料結構與演算法,...
2020 春招 校招 c 筆試總結
1.浩鯨雲 筆試35個選擇題加3個程式設計題,答的慘不忍睹,回憶一下還記得的然後做個總結 1.1選擇題 1.1.1c 是絕對型別安全的嗎 型別安全很大程度上可以等價於記憶體安全,型別安全的 不會試圖訪問自己沒被授權的記憶體區域。型別安全 常被用來形容程式語言,其根據在於該門程式語言是否提供保障型別安...