freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

哈夫曼編碼譯碼器實驗報告(免費)(存儲版)

2025-08-21 09:46上一頁面

下一頁面
  

【正文】 gnode * getroot(){return root。signode * HFM::creat(){signode * pp=NULL。i++){ //以下三個for循環(huán)選出當前森林中的最小兩個節(jié)點// if(forest[i]weightmin){min=forest[i]weight。min2=i。forest[min2]b=true。 //min2后的節(jié)點依次前移//count。else if(gudparentright==gud)hufNode[i].code[hufNode[i].size++]=1。khufNode[i].size。amp。i++){ if(hufNode[i].sizema)ma=hufNode[i].size。 pt=root。 } ch=fgetc(ipf)。SN[i].c!=NULL。 }coutendl。while(!feof(f)){ //feof(f1)判斷文件是否結束,結束返回值為真//putchar(ch)。 pt=root。){ if(ptleft==NULL){ coutptc。 //計數(shù)變量//for(int i=0。} } } ch=fgetc(inf)。i++)。i++){signode * gud=hufNode[i].sig。forest[i]!=NULL。 //新生成節(jié)點,權值為兩最小節(jié)點權值之和//ppleft=forest[min1]。i!=min1。for(int i=0。 int maxc()。 public:HFM(int all){root=pt=NULL。hufNode[i].sig!=NULL。bool b。sig[90].c=39。$39。}39。)39。=39。:39。 sig[67].c=39。sig[63].c=39。sig[59].c=39。sig[55].c=39。 sig[51].c=39。sig[47].c=39。sig[43].c=39。sig[39].c=39。sig[35].c=39。 sig[31].c=39。sig[27].c=39。sig[23].c=39。sig[19].c=39。 sig[15].c=39。sig[11].c=39。sig[7].c=39。 sig[3].c=39。 //森林數(shù)組保存出現(xiàn)的字符// int count=0。signode * right。} cout*謝謝使用*endl。 //哈夫曼解碼//coutendl。jhufNode[i].size。int choice。 //創(chuàng)建哈夫曼樹// count=0。int main(){init(SN)。最忌諱將所有代碼寫完后再調(diào)試,這樣若程序有錯誤,太難找 。 (f1,f2)。 //創(chuàng)建哈夫曼樹// void hufcode()。}Sig code[100] size}。 }}。 //權重// bool b。哈夫曼樹的理論創(chuàng)建過程如下:一、構成初始集合  對給定的n個權值{W1,W2,W3,...,Wi,...,Wn}構成n棵二叉樹的初始集合F={T1,T2,T3,...,Ti,...,Tn},其中每棵二叉樹Ti中只有一個權值為Wi的根結點,它的左右子樹均為空。根據(jù)上述過程可以知道該編碼譯碼器的關鍵在于字符統(tǒng)計和哈夫曼樹的創(chuàng)建以及解碼。 //字符// int weight。 parent=left=right=NULL。b=true。} signode * creat()。 exchange()。編寫大一點的程序,應先寫出算法,再寫程序,一段一段調(diào)試;對于沒有實現(xiàn)的操作用空操作代替,這樣容易找出錯誤所在。FILE * f3=fopen(d:\\,w)。 //創(chuàng)建哈夫曼樹實例// ()。 coutendl。 //輸出哈夫曼編碼//for(int j=0。 (f2,f3)。cinchoice。signode * left。 signode * forest[256]。c39。g39。k39。o39。s39。w39。A39。E39。I39。M39。Q39。U39。Y39。239。639。+39。,39。sig[70].c=39。sig[74].c=39。sig[78].c=39。 sig[82].c=39。sig[86].c=39。39。 //保存哈夫曼編碼// int size。 for(int i=0。 //編碼時做哨兵指針// int alleaf。 //解碼// void inorder(signode * sig)。int min1,min2。amp。} // } //至此找到min1 min2pp=new signode()。 //新生成節(jié)點加入森林for(i=min2。hufNode[i].sig!=NULL。hufNode[i].
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1