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

正文內(nèi)容

基于赫夫曼編碼的文本壓縮程序(編輯修改稿)

2025-06-12 21:14 本頁面
 

【文章內(nèi)容簡介】 d) { int i; L[0]=L[end]; i=end1; while(i=startamp。amp。int(L[i].internal_codeamp。0xFF)int(L[0].internal_codeamp。0xFF)) { L[i+1]=L[i]; i; } L[i+1]=L[0]; } //尋找權(quán)重最小的兩個結(jié)點 void xj_Select(const HuffmanTree HT,int n,intamp。s1,intamp。s2) { int i=0; s1=s2=0; for(i=1; i=n; ++i) { if(HT[i].parent==0) { if(s1==0) { s1=i; } else if(s2==0) { s2=i; } else if(HT[i].weight HT[s1].weight||HT[i].weight HT[s2].weight) { s1=HT[s1].weight HT[s2].weight?s1: s2; s2=i; } } } } //構(gòu)建 以及 結(jié)構(gòu) void xj_Statistics(HuffmanPCodeamp。HC,int internal_code1,int internal_code2,int(*FrequencyMeter)[255],intamp。n) { int position; if(internal_code1 128) { if(FrequencyMeter[internal_code1][0]==0) { ++n; HC=(HuffmanPCode)realloc(HC,(n+1)*sizeof(HuffmanCode)); HC[n].internal_code=internal_code1; HC[n].count=1; HC[n].internal_code_address=(InternalCode*)malloc(2*sizeof(InternalCode)); HC[n].internal_code_address[1].internal_code=0; //0 號單元未用 xj_InsertSort(HC,1,n); } ++FrequencyMeter[internal_code1][0]; } else { if(FrequencyMeter[internal_code1][internal_code2]==0) { position=xj_Search_Bin(internal_code1,HC,1,n); if(position! =0) { ++HC[position].count; HC[position].internal_code_address=(InternalCode*)realloc(HC[position].internal_code_address,(HC[position].count+1)*sizeof(InternalCode)); HC[position].internal_code_address[HC[position].count].internal_code=internal_code2; xj_InsertSort(HC[position].internal_code_address,1,HC[position].count); } else { ++n; HC=(HuffmanPCode)realloc(HC,(n+1)*sizeof(HuffmanCode)); HC[n].internal_code=internal_code1; HC[n].count=1; HC[n].internal_code_address=(InternalCode*)malloc(2*sizeof(InternalCode)); HC[n].internal_code_address[1].internal_code=internal_code2; xj_InsertSort(HC,1,n); } } ++FrequencyMeter[internal_code1][internal_code2]; } } //統(tǒng)計不同字符出現(xiàn)的頻率以及構(gòu)建 HC的機(jī)內(nèi)碼成員結(jié)構(gòu) bool xj_Init(char*filename,HuffmanPCodeamp。HC,int*amp。w,intamp。n) { ifstream ifs(filename); int i=0,j=0; int FrequencyMeter[255][255]={0}; char ch1,ch2; n=0; HC=NULL; w=NULL; if(()) { coutcan39。t open file! endl; return false; } while((ch1=())! =EOF) { if(int(ch1amp。0xFF)128) { ch2=(); } else { ch2=0; } xj_Statistics(HC,int(ch1amp。0xFF),int(ch2amp。0xFF),FrequencyMeter,n); } HC[0].count=0; for(i=2; i=n; ++i)HC[i].count+=HC[i1].count; w=(int*)malloc(HC[n].count*sizeof(int)); for(i=1; i=n; ++i) { for(j=HC[i1].count; j HC[i].count; ++j) { w[j]=FrequencyMeter[int(HC[i].internal_codeamp。0xFF)][int(HC[i].internal_code_address[jHC[i1].count+1].internal_codeamp。0xFF)]; } } (); return true; } //構(gòu)造赫夫曼樹 HT void xj_CreateHuffmanTree(HuffmanTreeamp。HT,const HuffmanPCode HC,const int*w,int n) { int i=0,j=0; int m=0,s1=0,s2=0; if(HC[n].count=1)return; m=2*HC[n].count1; HT=(HuffmanTree)malloc((m+1)*size
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1