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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(編輯修改稿)

2025-02-12 07:35 本頁面
 

【文章內(nèi)容簡介】 遍歷圖G(非遞歸算法)*/{ EdgeNode *p。 int w,i。 int queue[MAXV],front=0,rear=0。 /*定義循環(huán)隊列*/ bool visited[MAXV]。 /*定義頂點的訪問標(biāo)志數(shù)組*/ for(i=0。iGn。i++) visited[i]=false。 /*初始化*/ Visit(v)。 /*訪問編號為v的頂點*/ visited[v]=true。 /*置已訪問標(biāo)記*/ rear=(rear+1)%MAXV。 /*已訪點v入隊*/ queue[rear]=v。 while (front!=rear) /*若隊列不空時循環(huán)*/ { front=(front+1)%MAXV。 w=queue[front]。 /*已訪頂點出隊,賦給w*/ p=Gadjlist[w].firstedge 。 /*從w的首鄰接點出發(fā)*/ while(p) /*找w的所有鄰接點*/ { if (visited[padjvex]==false) /*處理未訪鄰接點*/ { Visit(padjvex)。 /*訪問鄰接點*/ visited[padjvex]=true。 /*置已訪標(biāo)記*/ rear=(rear+1)%MAXV。 /*已訪點進隊*/ queue[rear]=padjvex。 } p=pnext。 /*找下一個鄰接點*/ }// while (p) }// while (front!=rear) }運行的結(jié)果為: (2)圖的非遞歸遍歷//主函數(shù) void main() { char choice。 while(choice!=39。q39。) { cout\n******************************endl。 cout 歡迎使用哈夫曼編碼解碼系統(tǒng)endl。 cout******************************endl。 cout(1)要初始化哈夫曼鏈表請輸入39。i39。endl。 cout(2)要編碼請輸入39。e39。endl。 cout(3)要譯碼請輸入39。d39。endl。 cout(4)要打印編碼請輸入39。p39。endl。 cout(5)要打印哈夫曼樹請輸入39。t39。endl。 cout(6)要打印譯碼請輸入39。y39。endl。 if(flag==0)cout\n請先初始化哈夫曼鏈表,輸入39。i39。endl。 cinchoice。 switch(choice) { case 39。i39。: Initialization()。 break。 case 39。e39。: Encoding()。 break。 case 39。d39。: Decoding()。 break。 case 39。p39。: Code_printing()。 break。 case 39。t39。: Tree_printing(HT,2*n1)。 break。 case 39。y39。: Code_printing1()。 break。 default: coutinput errorendl。 } } free(z)。 free(w)。 free(HT)。 } 如圖運行如下:(1) 哈夫曼樹的創(chuàng)建 (1) 哈夫曼樹的創(chuàng)建//初始化哈夫曼鏈表 void Initialization() { int a,k,flag,len。 a=0。 len=InputCode()。 for(i=0。ilen。i++) {k=0。flag=1。 cou[ia].data=str[i]。 cou[ia].count=1。 while(ik) { if(str[i]==str[k]) { a++。 flag=0。 } k++。 if(flag==0) break。 } if(flag) { for(j=i+1。jlen。j++) {if(str[i]==str[j]) ++cou[ia].count。} } } n=lena。 for(i=0。in。i++) { coutcou[i].data 。 coutcou[i].countendl。 } for(i=0。i=n。i++) {*(z+i)=cou[i].data。 *(w+i)=cou[i].count。 } HuffmanCoding(HT,HC,w,n)。 遍歷如下: (2) (2)初始化哈夫曼鏈表建立哈夫曼的算法:void HuffmanCoding(HuffmanTree amp。HT,HuffmanCode amp。HC,int *w,int n) { // w存放n個字符的權(quán)值(均0),構(gòu)造哈夫曼樹HT,并求出n個字符的哈夫曼編碼HC int m,i,s1,s2,start。 //unsigned c,f。 int c,f。 HuffmanTree p。 char *cd。 if(n=1) return。//檢測結(jié)點數(shù)是否可以構(gòu)成樹 m=2*n1。 HT=(HuffmanTree)malloc((m+1)*sizeof(HTNode))。 // 0號單元未用 for(p=HT+1,i=1。i=n。++i,++p,++w) { pweight=*w。 pparent=0。 plchild=0。 prchild=0。 } for(。i=m。++i,++p) pparent=0。 for(i=n+1。i=m。++i) // 建哈夫曼樹 { // 在HT[1~i1]中選擇parent為0且weight最小的兩個結(jié)點,其序號分別為s1和s2 select(HT,i1,s1,s2)。 HT[s1].parent=HT[s2].parent=i。 HT[i].lchild
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1