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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì):電文編碼譯碼(哈夫曼編碼)-在線瀏覽

2025-08-12 07:26本頁面
  

【正文】 ③ 代碼文件的譯碼 譯碼的基本思想是:讀文件中編碼,并與原先生成的哈夫曼編碼表比較,遇到相等時(shí),即取出其對應(yīng)的字符存入一個(gè)新串中。int i,j,k。i=256。for(p=s。\039。 t[k]++。for(i=1,j=0。i++) if(t[i]!=0) { j++。}②哈夫曼樹的算法void CreateHT(HTNode ht[],int n,char str[],int []) //創(chuàng)建哈夫曼樹函數(shù){for(int input=1。input++) { str[input]=input。 for(int output=1。output++) { if([output] !=0) {ht[l].data=str[output]。 l++。 int min1,min2。i2*n1。 //所有結(jié)點(diǎn)的相關(guān)域置初值0 for (i=n。i++) //構(gòu)造哈夫曼樹 { min1=min2=MAX。 //lnode和rnode記錄最小權(quán)值的兩個(gè)結(jié)點(diǎn)位置 for (k=0。k++) //選出每次外層循環(huán)最小權(quán)值的兩個(gè)結(jié)點(diǎn) { if (ht[k].parent==0) //只在尚未構(gòu)造二叉樹的結(jié)點(diǎn)中查找 { if (ht[k].weightmin1) //比min1小時(shí) { min2=min1。 min1=ht[k].weight。 } else if (ht[k].weightmin2) //比min1大,比min2小 { min2=ht[k].weight。 } } } ht[lnode].parent=i。 //兩個(gè)最小節(jié)點(diǎn)的父節(jié)點(diǎn)是i ht[i].weight=ht[lnode].weight+ht[rnode].weight。ht[i].rchild=rnode。 HCode hc。in。 //初始位置 c=i。 while (p!=0) //循序直到樹根結(jié)點(diǎn)結(jié)束循環(huán) { []=(ht[p].lchild)==c?39。:39。 //左孩子記為0,右孩子記為1 c=p。 //與上句c=i。 //[]中最開始字符 hcd[i]=hc。 int i,j,k,x,m=0。 for (i=0。i++) for (j=0。j++) if(str[i]==ht[j].data) //循環(huán)查找與輸入字符相同的編號,相同的就輸出這個(gè)字符的編碼 { for (k=hcd[j].start。k++) { code[m]=hcd[j].cd[k]。 } break。39。39。in。 //m為想同編碼個(gè)數(shù)的計(jì)數(shù)器 for (k=hcd[i].start,j=0。k++,j++) //j為記錄所存儲這個(gè)字符的編碼個(gè)數(shù) { if(code[j]==hcd[i].cd[k]) //當(dāng)有相同編碼時(shí)m值加1 m++。 for(x=0。39。 //刪除j個(gè)數(shù),往前移動(dòng)j位 } } } printf(\n)。 int [257]。printf(請輸入字符串(任意字符):\n)。 n=jsq(st,sst)。i99。 //////////////////////////////////HTNode ht[M]。CreateHT(ht,n,st,)。 outputHCode(ht,hcd,n)。deHCode(ht,hcd,n,sst)。 //結(jié)點(diǎn)字符 int weight。 //雙親結(jié)點(diǎn) int lchild。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1