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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課后習(xí)題答案詳解(c語(yǔ)言版嚴(yán)蔚敏)2-文庫(kù)吧資料

2025-06-28 21:25本頁(yè)面
  

【正文】 ++。 cout請(qǐng)輸入指數(shù):。i++){ cout請(qǐng)輸入系數(shù):。 for(i=0。 if(!) return ERROR。 cin。 PolyTerm *p。// 建立一個(gè)多項(xiàng)式Status PolyInit(SqPoly amp。 int last。} PolyTerm。解:typedef struct{ int coef。 已知稀疏多項(xiàng)式,其中。 int last。} PolyTerm。 }},稀疏多項(xiàng)式采用的順序存儲(chǔ)結(jié)構(gòu)SqPoly定義為typedef struct { int coef。 qpre=p。 qprenext=p。 qpre=p。 qnext=p。 qfreqpfreq) q=qnext。 while(q!=L amp。 pnextpre=ppre。 else{ pfreq++。 pdata!=e) p=pnext。 while(p!=L amp。L,ElemType e){ DuLinkList p,q。試編寫符合上述要求的Locate操作的算法。} 設(shè)有一個(gè)雙向循環(huán)鏈表,每個(gè)結(jié)點(diǎn)中除有pre,data和next三個(gè)域外,還增設(shè)了一個(gè)訪問(wèn)頻度域freq。 i++。 rnext=q。 rnextpre=q。 qnextpre=qpre。 p=pnext。 i=1。 p=Lnext。L){ int i。試寫一時(shí)間復(fù)雜度O(n)的算法,將L改造為。 ,寫出刪除第i個(gè)結(jié)點(diǎn)的算法。 return OK。 p=XorP(pLRPtr,right)。 while(p!=NULL){ VisitingData(pdata)。){ p=。||d==39。 } } else if(d==39。 left=p。 left=NULL。L39。l39。L,char d){ XorPointer p,left,right。試寫一算法按任一方向依次輸出鏈表中各元素的值。鏈表L中的每個(gè)結(jié)點(diǎn)只含兩個(gè)域:data域和LRPtr域,其中LRPtr域存放該結(jié)點(diǎn)的左鄰與右鄰結(jié)點(diǎn)指針(不存在時(shí)為NULL)的異或。XorPointer XorP(XorPointer p, XorPointer q)。typede struct { //無(wú)頭結(jié)點(diǎn)的異或指針雙向鏈表 XorPointer Left, Right。 struct XorNode *LRPtr。 return OK。 } } q=L。 pt3next=q。 p=pnext。 pt2=pt2next。 qnext=pt2next。)){ q=p。 pdata=39。 amp。) || (pdata=39。 pdata=39。 amp。 } else if((pdata=39。 pt1next=q。 p=pnext。939。amp。039。 pt3=s3。 pt1=s1。s3){ LinkList p,q,pt1,pt2,pt3。s1,LinkList amp。解:// 將單鏈表L劃分成3個(gè)單循環(huán)鏈表Status ListDivideInto3CL(LinkList amp。 return OK。 p=pnext。 while(p!=L){ ppre=q。 q=L。} // 將單循環(huán)鏈表改成雙向鏈表Status ListCirToDu(DuLinkList amp。 Lnext=p。 pdata=e。 p=(DuLinkList)malloc(sizeof(DuLNode))。} // 向循環(huán)鏈表中插入一個(gè)結(jié)點(diǎn)Status ListInsert_DL(DuLinkList amp。 Lnext=L。 if(!L) exit(OVERFLOW)。解:// 建立一個(gè)空的循環(huán)鏈表Status InitList_DL(DuLinkList amp。 return OK。 } qnext=pnext。 while(pnext!=S){ q=p。 q=S。S){ LinkList p,q。已知s為指向鏈表中某個(gè)結(jié)點(diǎn)的指針,試編寫算法在鏈表中刪除指針s所指結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)。 return OK。 } pb=B。 qbnext=pb。 } } while(pb){ pt=pb。 qanext=pa。 } else{ pt=pa。 } else if(pbdatapadata){ qa=pa。 qbnext=pb。pb){ if(pbdatapadata){ pt=pb。 while(paamp。 // 保存pb的前驅(qū)指針 pa=panext。 qa=pa。 pa=A。A,LinkList amp。 ListMinus_L(A,B)。B,LinkList amp。解:// 在A中刪除既在B中出現(xiàn)又在C中出現(xiàn)的元素,并釋放B、CStatus ListUnion_L(LinkList amp。} 。ListCross_L(B,C,Temp)。C){ SqList Temp。A,SqList amp。解:// 在A中刪除既在B中出現(xiàn)又在C中出現(xiàn)的元素,結(jié)果放在D中Status ListUnion_Sq(SqList amp。} 已知A,B和C為三個(gè)遞增有序的線性表,現(xiàn)要求對(duì)A表作如下操作:刪去那些既在B表中出現(xiàn)又在C表中出現(xiàn)的元素。 free(pb)。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。 pa=panext。 free(pt)。 pa=panext。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。amp。 pb=pbnext。 // 保存pa的前驅(qū)指針 qb=pb。 pb=B。B){ LinkList pa,pb,qa,qb,pt。}(2)// A、B求交,結(jié)果放在A表中,并刪除相同元素Status ListCrossDelSame_L(LinkList amp。 free(pb)。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。 pa=panext。 free(pt)。 pa=panext。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。amp。 C=A。 // 保存pb的前驅(qū)指針 pa=panext。 qa=pa。 pa=A。B,LinkList amp。解: (1)// A、B求交,結(jié)果放在C表中,并刪除相同元素Status ListCrossDelSame_L(LinkList amp。} ,對(duì)單鏈表重新編寫求得表C的算法。 } } =k。 k++。 k++。 else if([i][j]) j++。amp。B){ int i=0,j=0,k=0。}(2)// A、B求交,然后刪除相同元素,將結(jié)果放在A表中Status ListCrossDelSame_Sq(SqList amp。 } i++。 } else if([]!=[i]){ ListInsert_Sq(C,k,[i])。 else{ if(==0){ ListInsert_Sq(C,k,[i])。 j){ if([i][j]) i++。 while(i amp。B,SqList amp。解:(1)// A、B求交,然后刪除相同元素,將結(jié)果放在C表中Status ListCrossDelSame_Sq(SqList amp。} ,對(duì)順序表重新編寫求得表C的算法。 free(pb)。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。 pa=panext。 free(pt)。 pb=pbnext。 free(pt)。 pa=panext。amp。 C=A。 // 保存pb的前驅(qū)指針 pa=panext。 qa=pa。 pa=A。B,LinkList amp。解:// 將A、B求交后的結(jié)果放在C表中,并刪除B表Status ListCross_L(LinkList amp。} 。 k++。 else{ ListInsert_Sq(C,k,[i])。 j){ if([i][j]) i++。 while(i amp。B,SqList amp。解:// 將A、B求交后的結(jié)果放在C表中Status ListCross_Sq(SqList amp。} 假設(shè)以兩個(gè)元素依值遞增有序排列的線性表A和B分別表示兩個(gè)集合(即同一表中的元素值各不相同),現(xiàn)要求另辟空間構(gòu)成一個(gè)線性表C,其元素為A和B中元素的交集,且表C中的元素有依值遞增有序排列。 free(pb)。 Anext=qb。 pb=pbnext。 Anext=qa。 pa=panext。 //將當(dāng)前最小結(jié)點(diǎn)插入A表表頭 Anext=qb。 pb=pbnext。 //將當(dāng)前最小結(jié)點(diǎn)插入A表表頭 Anext=qa。 pa=panext。amp。 C=A。 pb=pbnext。 // 保存pa的前驅(qū)指針 qb=pb。 pb=B。C){ LinkList pa,pb,qa,qb。A,LinkList amp。} 假設(shè)有兩個(gè)按元素值遞增有序排列的線性表A和B,均以單鏈表作存儲(chǔ)結(jié)構(gòu),請(qǐng)編寫算法將A表和B表歸并成一個(gè)按元素值遞減有序(即非遞增有序,允許表中含有值相同的元素)排列的線性表C,并要求利用原表(即A表和B表)的結(jié)點(diǎn)空間構(gòu)造C表。 free(pb)。 } if(!pa)qbnext=pb。 qbnext=qanext。 pa=panext。pb){ qa=pa。 while(paamp。 pb=Bnext。C){ LinkList pa,pb,qa,qb。A,LinkList amp。注意:?jiǎn)捂湵淼拈L(zhǎng)度值m和n均未顯式存儲(chǔ)。} 設(shè)線性表,試寫一個(gè)按下列規(guī)則合并A,B為線性表C的算法,即使得 當(dāng)時(shí); 當(dāng)時(shí)。 Lnext=q。 p=pnext。 Lnext=NULL。 p=L。解:// 帶頭結(jié)點(diǎn)的單鏈表的逆置Status ListOppose_L(LinkList amp。 } return OK。 [i]=[]。i。 ElemType x。解:// 順序表的逆置Status ListOppose_Sq(SqList amp。 free(q)。 q=p。amp。 p=pnext。 p=pnext。 p=L。解:void ListDelete_LSameNode(LinkList amp。 } } return OK。 p=pnext。 } else{ prevnext=pnext。pdatamaxk){ if(pdata=mink){ prev=p。 while(pamp。 prev=p。 if(minkmaxk)return ERROR。解:Status ListDelete_L(LinkList amp。 已知線性表中的元素以值遞增有序排列,并以單鏈表作存儲(chǔ)結(jié)構(gòu)。} 試寫一算法,在無(wú)頭結(jié)點(diǎn)的動(dòng)態(tài)單鏈表上實(shí)現(xiàn)線性表操作Insert(L,i,b),并和在帶頭結(jié)點(diǎn)的動(dòng)態(tài)單鏈表上實(shí)現(xiàn)相同操作的算法進(jìn)行比較。 snext=p。 } if(!s)return INFEASIBLE。kj1){ s=snext。 while(samp。 } else{ s=lb。 // 將從la中刪除的結(jié)點(diǎn)插入到lb中 if(j=1){ qnext=lb。 // 完成刪除,注意,i=1的情況需要特殊處理 if(!prev) la=qnext。 k++。amp。 k=1。 } if(!p)return INFEASIBLE。 p=pnext。amp。 // 在la表中查找第i個(gè)結(jié)點(diǎn) p=la。 int k=1。la,LinkList amp。 return OK。 } snext=p。 while(kj){ s=snext。 } s=lb。 while(k=len){ q=qnext。 k++。 k=1。Status DeleteAndInsertSub(LinkedList la,Linke
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1