數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)要點(diǎn)_第1頁
數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)要點(diǎn)_第2頁
數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)要點(diǎn)_第3頁
數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)要點(diǎn)_第4頁
數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)要點(diǎn)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第一 數(shù)據(jù)結(jié)構(gòu)概(有時候)個元素(根)之外,其它每個數(shù)據(jù)元素都只有一個直接前驅(qū),以及多個或零個直nO(1)<O(log2n)<O(n)<O(nlog2n)<O(n2)<O(n3)<O(2n)<O(n!)<O(n(1)512可預(yù)期的后果5、高效率(O(1O(n指數(shù)階O(2^n)。通常認(rèn)為,具有常數(shù)階量級的算法是好算法,而具有指數(shù)階量級的算法是第二 線性定義:線性表n個數(shù)據(jù)元素的有限序列。一個數(shù)據(jù)元素可由若干個數(shù)據(jù)項初始化:p=(structstudent*)malloc(sizeof(structstudent));插入:p->next=head- head- p->next=q->next for(p=head;p;p=p-2pqqP->next=q->next 3、在長度為NN/2個元素,刪除一個元素平均需要移動(N-1)/2個元素。300(n個元素的地址即首地址+(n-1)*a[12](13typedefintdatatype; typedefstructnode{ datatypestructnode Lnode,*pointer結(jié)點(diǎn)類型,typedefpointer lklistinitlist()pointerhead=newnode;//C++//head=( C return}(Cintinsert(lklisthead,datatypex,inti){pointerq,s;q=get(head,i-1);//i-1 //i-1i<1i>n+1{cout<<”非法插入位置!\n”;//這是C++做法即C語言中的 return0;}s=newnode;//生成新結(jié)點(diǎn) 即C語言中的s=(pointer)malloc(sizeof(Lnode));s->next=q->next;//新點(diǎn)的后繼是原第i個點(diǎn) return1; }(Cintdelete(lklisthead,inti){pointerp,q; if(q==NULL||q->next==NULL) //即i<1或i>n時{cout<<”非法刪除位置!\n”;return0;} delete //釋放結(jié) 即C語言中的return head為空的判定條件是(A head- head為空的判定條件是(B head- pps所指結(jié)點(diǎn),則執(zhí)行(B p- p所指結(jié)點(diǎn)的后續(xù)結(jié)點(diǎn),則執(zhí)行(A 平均比較(B)個結(jié)點(diǎn)。A. B C.n- D.O(nn個元素的向量,建立一個有序單鏈表的時間復(fù)雜度 D.O(n在一個具有n個結(jié)點(diǎn)的有序單鏈表中插入一個新結(jié)點(diǎn)并仍然有序的時間復(fù)雜度是(B) D.O(n㏒2n)qp->next=(p->next->nextpss->next=(p->next)對于一個具有n,在已知所指結(jié)點(diǎn)后插入一個新結(jié)點(diǎn)的時間復(fù)雜度是(O(n)第三 棧和隊棧typedefstructintlistsize; structlist*head;//棧頂指針structlist*base;//棧底指針}P46-47) ABCDEA. B. C. 2TOP表示棧頂元素,那么??盏臈l件是A. B. C. O(1)(N無關(guān)。斷???、出棧、入棧用函數(shù)實現(xiàn)2)(D) B.刪除操作比較容易 typedefstructintstructQNodetypedefstruct{QueuePtrQueuePtrLinkQueueInitQueue(LinkQueue{return}LinkQueueEnQueue(LinkQueueQ,int{QueuePtrp;

return}{intQueuePtrreturn}structlist{structlistp=(structlist*)malloc(LEN);}structlist*push(structlist*head,int{structlistp=(structlist*)malloc(LEN);}structlist*pop(structlist{structlist*p;}intlistempty(structlist{elsereturn}(不是重點(diǎn)內(nèi)容串的賦值:x=’abc’;或x[(不是重點(diǎn)內(nèi)容position明確按行存儲和按列存儲1中類將特殊矩陣中的元素按相應(yīng)的換算方式存入數(shù)組中。這些矩陣包括:對稱矩陣,三角矩三元組十字鏈表typedefint int typedefstruct{intmu,nu,tu; Triple typedefstructint int structOLNode //}OLNode,*OLink;typedefstruct{intmu,nu,tu; CrossListCreat(CrossListM){intm,n,t;M.rhead=(OLink*)malloc((m+1)*sizeof(OLink));//開辟行表頭指針組M.chead=(OLink*)malloc((n+1)*sizeof(OLink));//開辟行列頭指針組 }樹樹:n(n≥0)n=0⑵當(dāng)n>1時,除根結(jié)點(diǎn)之外的其余結(jié)點(diǎn)被分成m(m>0)個互不相交的有限集合T1,T2,…,Tm,其中每個集合又是一棵樹,并稱為這個根結(jié)點(diǎn)的子樹。0的結(jié)點(diǎn),也稱為終端結(jié)點(diǎn)。0的結(jié)點(diǎn),也稱為非終端結(jié)點(diǎn)。兄弟 n1,n2,…,nknini+1(1<=i<kxyxy的祖先,yx的子孫。1k層,則其孩子k+1層。樹的深度 層序編號:將樹中結(jié)點(diǎn)按照從上層到下層、同層從左到右的次序依次給他們編以從(1)n(n≥0)個結(jié)點(diǎn)的有限集合,該集合或者為空集(稱為空(02i的結(jié)點(diǎn)在二叉樹中的位置完全相同。1kk-1(i≥12k2k-1k2k-1:性質(zhì)4:具有n個結(jié)點(diǎn)的完全二叉樹的深度為 +15n1開始按層序編號,則對于任意的序i(1≤i≤n)的結(jié)點(diǎn)(i,有:i>1,則結(jié)點(diǎn)i的雙親結(jié)點(diǎn)的序號為i/2i=1i是根結(jié)點(diǎn),無雙2i≤ni2i2i>ni二叉樹的遍歷(遞歸調(diào)用與訪問的順序不同而產(chǎn)生不同的遍歷方法voidXianXu(BiTreeT){ }}0(葉子結(jié)點(diǎn))2(分支結(jié)點(diǎn))1的結(jié)點(diǎn)147個結(jié)點(diǎn),則該二叉樹有(C)A. B. C. n-1 n n-1所以,葉子結(jié)點(diǎn)數(shù) 計算第n層和第n-1層的總?cè)~子結(jié)點(diǎn)(CCA F ↙E4、完全二叉樹

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論