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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)—用c語言描述習(xí)題答案(文件)

2025-07-12 21:29 上一頁面

下一頁面
 

【正文】 }}return(null)。amp。 // 比較下一字符 if (sch[i]!=’\0’amp。amp。本算法是先模式匹配,查找T在S中的第一次出現(xiàn)。 // pre是前驅(qū)指針,指向S中與T匹配時,T 中的前驅(qū) sp=Snext。 tp)if (spdata==tpdata) // 相等時后移指針 {sp=spnext。 tp=Tnext。 // 將S中與T串匹配時的前驅(qū)指向匹配后的后繼 while (tp!=sp) { r=tpnext。以行序?yàn)橹鳎葱袃?yōu)先)時,先改變右邊的下標(biāo),從右到左進(jìn)行。im。 // b數(shù)組記最小值的列號,k記最小值的個數(shù) for(j=1。k=1。jjk。 // a[i][j]是否是馬鞍點(diǎn) while (kkm amp。 } // END OF for jj } // END OF for i 最壞時間復(fù)雜度為O(m*(n+n*m)). (最壞時所有元素相同,都是馬鞍點(diǎn)) 解法2: 若矩陣中元素值互不相同,則用一維數(shù)組row記下各行最小值,再用一維數(shù)組col記下各列最大值, 相等者為馬鞍點(diǎn)。 // 最小值初始化 for (j=1。jn。i++) // 找每一列中的最大值 if (a[i][j]col[j]) col[j]=a[i][j]。jn。for(i=0。 i++) for (j=0。 // 重新確定第i行最小值的列號 } for (i=0。 } // END OF for jj } 時間復(fù)雜度為O(m*n+m). (1)三元組表(行號 0—5,列號 0—5)S=((0,0,15),(0,3,22),(0,5,15),(1,1,11),(1,2,3),(2,3,6),(4,0,91),(5,2,28))(2):兩矩陣A和B相加的結(jié)果是一矩陣C,其元素Cij有三種情況;(1)Cij=Aij(Bij =0);(2)Cij=Bij(Aij =0);(3)Cij=Aij+Bij 。 while(ca!=Aamp。} if(pa==ca)ca=canext。pt=ptdown。pre=pt。//該結(jié)點(diǎn)從B表相應(yīng)行鏈表中摘下。pt=cha[j]。ptdownrowptbrow) {pre=pt。pt=cha[i]。ptrightcolptbcol) {pre=pt。 }//end of “if (pbcolpacol) else if(pacol=pbcol)//處理兩表中行列相同的非0元素 {v=padata+pbdata。 } else{將pa,pb從鏈表中刪除。 其右兄弟的編號 n+1(1)順序存儲結(jié)構(gòu) 1 2 3 4 5 6 7 8 9 10 11 12 13 14ABCDEFGH注:為空結(jié)點(diǎn) A C B ^^ E ^ F ^ ^ D^ H ^^ G ^(1) 前序 ABDGCEFH(2) 中序 DGBAECHF(3) 后序 GDBEHFCA(1) 空二叉樹或任何結(jié)點(diǎn)均無左子樹的非空二叉樹(2) 空二叉樹或任何結(jié)點(diǎn)均無右子樹的非空二叉樹(3) 空二叉樹或只有根結(jié)點(diǎn)的二叉樹int height(bitree bt)// bt是以二叉鏈表為存儲結(jié)構(gòu)的二叉樹,本算法求二叉樹bt的高度 { int bl,br。 return(blbr? bl+1: br+1)。 // s是棧,棧中元素是二叉樹結(jié)點(diǎn)在cbt中的序號 // top是棧頂指針,棧空時top=0 if (n=0) { printf(“輸入錯誤”)。// 先序訪問左子樹 } if (top0) i=s[top]。 { if (i=n amp。 preorder(bt,n,2*i+1)。 T2==null) return(1)。amp。 {根結(jié)點(diǎn)指針入隊列}while (!empty(q)) { p=delqueue(q)。 (前序非遞歸遍歷){ bitree *s[n+1]。 t=tlchild } if (top!=0) { t=s[top]。top=0。 t=trchild。stack s[n+1] 。 t=tlchild。}if (top) { s[top].tag=1。 *t=null。 // 在左子樹中查找并拆開 // 若在左子樹中未找到,就到右子樹中查找并拆開 if (!find) find=(dissect(amp。 // 空二叉樹 } // 算法結(jié)束 int search(bitree t,ElemType x)// 設(shè)二叉樹t中,值為x的結(jié)點(diǎn)至多一個,本算法打印x的所有祖先 // 算法思想是,借助后序非遞歸遍歷,用棧裝遍歷過程的結(jié)點(diǎn),當(dāng)查到 // 值為x的結(jié)點(diǎn)時,棧中元素都是x的祖先 { typedef struct { bitree p。 int top=0。amp。 } if (tdata==x) // {for (i=1。 } elsewhile (top0 amp。t=s[top].p。線索鏈表: 0 A 0 0 C 0 0 B 1 0 F 1 1 E 1 1 0 0 1 H 1^ 1 G 1 bitree *search(bitree *p)// 查找前序線索二叉樹上給定結(jié)點(diǎn)p的前序后繼 { if (pltag==1) return(prchild); // 左標(biāo)記為1時,若p的右子樹非空,p的右子樹的根prchild為p的后繼;若右子樹為空,prchild指向后繼 else return(plchild)。 哈夫曼編碼:a:0010b:10c:00000d:0001e:01f:00001g:11h:0011第七章圖(參考答案)7.1(1)鄰接矩陣中非零元素的個數(shù)的一半為無向圖的邊數(shù);(2)A[i][j]= =0為頂點(diǎn),I 和j無邊,否則j和j有邊相通;(3)任一頂點(diǎn)I的度是第I行非0元素的個數(shù)。 //全程變量② void dfs(vtxptr x)//從頂點(diǎn)x開始深度優(yōu)先遍歷圖g。exit(0)。 p=pnextarc。 scanf (amp。 if (found) printf (” 頂點(diǎn)”,i,”和頂點(diǎn) ”,j,”有路徑 ”);else printf (” 頂點(diǎn)”,i,”和頂點(diǎn) ”,j,”無路徑 ”);}// void connect_DFS(2)寬度優(yōu)先遍歷全程變量,調(diào)用函數(shù)與(1)相同,下面僅寫寬度優(yōu)先遍歷部分。{ y=delqueue(q)。//第一鄰接點(diǎn) while (p!=null) {k=padjvex。算法基本思想是利用圖的遍歷,以頂點(diǎn)VK開始,若遍歷中再通到VK,則存在簡單回路,否則不存在簡單回路。//全程變量Int dfs(btxptr x)//從k頂點(diǎn)深度優(yōu)先遍歷圖g,看是否存在k的簡單回路{ visited[x]=1。exit(0)。入度為0頂點(diǎn)用棧結(jié)構(gòu)存儲,初始時從頂點(diǎn)1到頂點(diǎn)N掃描,入度為0的頂點(diǎn)進(jìn)棧,得V5在棧頂。{ visited[1..n]=0。//頂點(diǎn)入棧 while (top!=0) {w=firstadj(g,v)。 num++。} V2 V4 V6 a2=3 a9=4 a12=4 a1=5 a7=5 a11=5 V9 V10 V1 a4=6 V7 a14=2 a3=6 a13=2 a5=3 a10=4 V3 V5 V8頂點(diǎn) Ve Vl活動 e l leV1 0 0V2 5 9V3 6 6V4 12 12V5 15 16V6 16 20V7 17 17V8 19 20V9 22 22V10 24 24a1 0 0 0a2 5 9 4a3 0 0 0a4 6 6 0a5 6 13 7a6 12 13 1a7 12 12 4a8 15 16 0a9 12 16 4a10 15 16 1a11 17 17 0a12 16 20 4a13 19 20 1a14 22 22 0關(guān)鍵路徑 V1V3V4V7V9V10 長 22關(guān)鍵活動 a3,a4,a7,a11,a14頂點(diǎn) Ve Vl活動 e。}//輸出頂點(diǎn) }printf(“\n”)。 w=nextadj(g,v,w)。num=0。//基本思想是利用棧s存放頂點(diǎn),首先出棧的頂點(diǎn)是出度為0的頂點(diǎn),是拓?fù)湫蛄兄凶詈笠粋€頂//點(diǎn)。 p=pnextarc。 while(p!=null) { w=padjvex。 visited[1..n]=0。 p=pnextarc }}// if(y= =j) }//while(!empty(q))7.5。exit(0)。enqueue(q,x)。j)。設(shè) 1=i ,j=n,ij. { visited[1..n]=0。//找x的第一鄰接點(diǎn) while (p!=null) { k=padjvex。{ visited[x]=1。(3) 0 1 ∞ 1∞ 0 1 ∞1 ∞ 0 ∞∞ ∞ 1 0鄰接矩陣V1V4 ||\V2 | ^|\V2V3 |^|\V1 | ^|\V3V4V3 |^|\鄰接表V1V3 |^|\V2V1 |^|\V2 | ^|\V4 | ^|\V3V4V1 |^|\逆鄰接表7.3(1)鄰接表V14 |2 | ^6 |5 |3 |V21 | ^6 |V31 | ^4 |5 |V41 | ^6 |3 |5 |V55 | ^4 |1 |3 |V61 | ^2 |4 |5 |(2)從頂點(diǎn)4開始的DFS序列:V5,V3,V4,V6,V2,V1(3)從頂點(diǎn)4開始的BFS序列:V4,V5,V3,V6,V1,V27.4(1)① adjlisttp g。 //p有右子女時,
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1