




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、算法與數(shù)據(jù)結(jié)構(gòu)復(fù)習(xí)重點一、第2章程序性能1、給出一個程序段,會寫出該程序段的時間復(fù)雜度;二、第3章線性表1、順序存儲結(jié)構(gòu)的特點表中元素可以隨機訪問;非表尾的插入和刪除操作需要移動元素;表空間無法動態(tài)擴充,需預(yù)先按最大空間分配,存儲空間利用率低;相鄰元素的物理位置相鄰無需為維護表中元素的邏輯關(guān)系增加額外的存儲空間2、若用數(shù)組實現(xiàn)表,設(shè)表元素總數(shù)為n,在第k個元素后插入一個新元素,需 要后移的元素數(shù)目為n-k。設(shè)在表的任何合法位置上插入元素的概率均等,則 插入操作所需要的元素移動平均次數(shù)為n/2。3、若用數(shù)組實現(xiàn)表,設(shè)表元素總數(shù)為n,刪除第k個元素,需要前移的元素數(shù) 目為n-k。設(shè)刪除表的任何元素
2、的概率均等,則刪除操作所需要的元素移動平 均次數(shù)為(n-1)/2。4、鏈?zhǔn)酱鎯Y(jié)構(gòu)的特點表元素分散存放,物理位置不一定相鄰;每個結(jié)點包含指向下一結(jié)點的指針域;只能順序搜索,不能隨機訪問;插入和刪除操作只需要通過修改指針實現(xiàn),效率較高不需為表預(yù)留空間,存儲空間利用率高,表容量可動態(tài)擴充每個結(jié)點中的指針域需占用額外空間5、在帶哨兵結(jié)點的單循環(huán)鏈表中,設(shè)置尾指針last指向鏈尾結(jié)點,每個結(jié)點中 的后繼指針域為next,則判斷表空的表達式為last-next=last;在帶哨兵結(jié) 點的雙循環(huán)鏈表中,設(shè)置指針header指向哨兵結(jié)點,每個結(jié)點中的后繼指針 域為next,前驅(qū)指針域為prior,則判斷表空
3、的表達式為header-next=header 或 header-prior=header。6、在帶哨兵結(jié)點的單鏈表的插入和刪除操作中,鏈指針的修改7、理解靜態(tài)鏈表靜態(tài)鏈表中的指針域又稱為游標(biāo)或模擬指針,存放下一元素在數(shù)組中的下標(biāo)多條靜態(tài)鏈表可共用一個數(shù)組空間在數(shù)組空間中,靜態(tài)鏈表中的元素可以分散存放,即相鄰元素的下標(biāo)不一定 相鄰靜態(tài)鏈表的擴充受到數(shù)組空間容量的限制三、第4章棧1、棧的操作原則為先進后出或后進先出,插入和刪除操作均在棧頂方向上進行。2、用數(shù)組實現(xiàn)棧的入棧和出棧函數(shù);3、用數(shù)組實現(xiàn)棧的優(yōu)缺點:棧上的基本操作都能在常量時間內(nèi)完成,效率較高;為避免棧發(fā)生溢出,通常需要預(yù)置一個較大???/p>
4、間,存儲空間利用率較低; 為提高空間利用率,可讓多棧共享數(shù)組空間;4、用鏈表實現(xiàn)棧的特點:鏈??臻g可以動態(tài)擴充四、第5章隊列1、隊列的操作原則是先進先出或后進后出,插入操作在隊尾進行,刪除操作在 隊頭進行2、若用循環(huán)數(shù)組實現(xiàn)隊列,設(shè)置front指向隊頭元素前一單元,rear指向隊尾元 素,并采用總剩一個單元不利用的方法區(qū)分滿空狀態(tài),則當(dāng)front和rear滿足 什么關(guān)系時隊列為空,滿足什么關(guān)系時隊列為滿?3、用循環(huán)數(shù)組實現(xiàn)隊列的入隊和出隊函數(shù)。五、第6章樹1、樹的基本概念,包括樹的度、葉結(jié)點或終端結(jié)點、分支結(jié)點、內(nèi)部結(jié)點、兄 弟、堂兄弟、祖先、子孫、樹的高度、有序樹、無序樹。2、樹的表示法父結(jié)
5、點數(shù)組表示法可以快速找到結(jié)點的父結(jié)點,但查詢兒子結(jié)點和兄弟結(jié)點 可能要遍歷整個數(shù)組;在兒子表示法中,若采用定長結(jié)點的多重鏈表結(jié)構(gòu),則表示一棵有n個結(jié)點 度為d的樹必有nd-(n-1 )個空鏈域兒子鏈表表示法適合于查找子結(jié)點,但不適合于查找父結(jié)點和兄弟結(jié)點帶雙親的兒子鏈表表示法適合于查找子結(jié)點、父結(jié)點和兄弟結(jié)點左兒子右兄弟表示法方便查找子結(jié)點和兄弟結(jié)點,但不方便查找父結(jié)點給出一棵樹,會用父結(jié)點數(shù)組表示法、兒子鏈表表示法、左兒子右兄弟表示 法表示它。3、二叉樹的概念二叉樹是有序樹度為2的樹不一定是二叉樹度為2的有序樹不一定是二叉樹子樹有嚴(yán)格左右次序之分,且度2的樹是二叉樹4、具有3個結(jié)點的樹有5種
6、形態(tài),具有3個結(jié)點的二叉樹有3種形態(tài)。5、滿二叉樹的特點:所有葉結(jié)點都集中在最底層不存在度為1的結(jié)點每一層上的結(jié)點數(shù)均達到最大值所有分支結(jié)點都存在左子樹和右子樹例題:高度為8的滿二叉樹的結(jié)點總數(shù)為255。6、完全二叉樹的特點:葉結(jié)點只可能在層次最大的兩層上出現(xiàn)最下層的葉結(jié)點一定集中在該層的左端度小于2的結(jié)點只可能位于最下兩層除最下層外,其余各層均滿度為1的結(jié)點只可能出現(xiàn)在倒數(shù)第二層對任一結(jié)點,若其右分支下的子孫最大層次為s,則其左分支下的子孫的最 大層次必為s或s+17、二叉樹的性質(zhì)具有n個結(jié)點的非空二叉樹共有n-1個分支非空二叉樹的第i層上至多有2i-i個結(jié)點(i1)高度為h的非空二叉樹至多
7、有2h-1個結(jié)點高度為h的完全二叉樹至多有2h-1個結(jié)點,至少有2h-i個結(jié)點若非空二叉樹有no個葉結(jié)點,氣個度為2的結(jié)點,則氣二具有n個結(jié)點的完全二叉樹的高度為h= |log2n +1。具有n個結(jié)點的二叉樹的最小高度為Llog2n_| +1,最大高度為n。若對具有n個結(jié)點的完全二叉樹按照層次從上到下,每層從左到右的順序進 行編號,則編號為i的結(jié)點具有下列性質(zhì):i如果i=1,則結(jié)點i是二叉樹的根,無父結(jié)點;否則父結(jié)點是i/2ii如果2in,則結(jié)點i無左孩子(結(jié)點i為葉結(jié)點);否則左孩子編號為2iiii如果2i+1n,則結(jié)點i無右孩子;否則右孩子為結(jié)點2i+1例題:(以下題均設(shè)僅含一個結(jié)點的二叉
8、樹的高度為1)具有74個結(jié)點的完全二叉樹,高度為 7,葉結(jié)點有37 個。(設(shè)僅含一個結(jié)點的二叉樹的高度為1)已知二叉樹中葉子數(shù)為40,僅一個孩子的結(jié)點數(shù)為20,則總結(jié)點數(shù)_。在含30個結(jié)點的完全二叉樹中,對所有結(jié)點按層序從1開始編號(從上層到下層,每層從左到右),則編號為10的結(jié)點的左子結(jié)點編號為20 ,右子 結(jié)點編號為21 ,父結(jié)點編號為 5。高度為11的完全二叉樹至多有2047個結(jié)點,至少有1024個結(jié)點。具有70個結(jié)點的完全二叉樹的高度為_1。具有43個結(jié)點的二叉樹的最小高度為6 ,最大高度為 43。設(shè)在高度為h的二叉樹(設(shè)僅有一個結(jié)點的二叉樹高度為1)中只有葉結(jié)點 和度為2的結(jié)點(沒有
9、度為1的結(jié)點),則該二叉樹至多有2h-1個結(jié)點, 至少有2h-1個結(jié)點。8、二叉樹的存儲結(jié)構(gòu)在二叉樹的鏈?zhǔn)酱鎯Y(jié)構(gòu)中,含有n個結(jié)點的二叉鏈表有n+1個空鏈域,含 有n個結(jié)點的三叉鏈表有n+2個空鏈域。9、二叉樹的前序、中序、后序遍歷給定一棵二叉樹,能寫出它的前序、中序、后序遍歷序列;給定一棵二叉樹的前序和中序序列,能畫出該二叉樹并寫出它的后序序列; 或給定一棵二叉樹的后序和中序序列,能畫出該二叉樹并寫出它的前序序列;10、線索二叉樹線索二叉樹結(jié)點的Ichild、ltag、rchild、rtag各域的含義如何利用中序線索鏈表進行二叉樹的中序遍歷?如何利用后序線索鏈表進行 二叉樹的后序遍歷?如何利
10、用前序線索鏈表進行二叉樹的前序遍歷?11、樹、二叉樹、森林的相互轉(zhuǎn)換中的幾個結(jié)論前序遍歷樹與前序遍歷與該樹對應(yīng)的二叉樹具有相同的遍歷結(jié)果后序遍歷樹與中序遍歷與該樹對應(yīng)的二叉樹具有相同的遍歷結(jié)果前序遍歷森林與前序遍歷與該森林對應(yīng)的二叉樹具有相同的遍歷結(jié)果后序遍歷森林與中序遍歷與該森林對應(yīng)的二叉樹具有相同的遍歷結(jié)果六、第7章優(yōu)先隊列1、最大堆和最小堆的定義(理解)2、初始建堆操作的建堆過程;堆的插入操作中堆的調(diào)整過程;刪除堆頂元素后 堆的調(diào)整過程3、堆排序的時間復(fù)雜度為O(nlogn)4、堆排序的方法;堆排序是一種不穩(wěn)定的排序方法5、左偏高樹的左子樹高度不一定大于右子樹高度6、具有m個結(jié)點的左偏高
11、樹和左偏重樹的最右路徑長度最多為log2(m+1)7、左偏樹不作為復(fù)習(xí)要點七、第8章搜索樹1、二叉搜索樹的定義2、二叉搜索樹的中序遍歷序列是升序序列3、二叉搜索樹上的查找操作過程,插入操作過程,刪除操作中樹結(jié)構(gòu)的重組(重 點掌握當(dāng)被刪結(jié)點存在左右子樹時,樹結(jié)構(gòu)重組策略3。即用被刪結(jié)點P的 左子樹中最右下結(jié)點S中元素替代被刪元素,將S的左子樹掛接為其父結(jié)點 的右子樹。)4、二叉搜索樹上的前驅(qū)運算和后繼運算的操作過程。5、平衡二叉樹的定義,平衡因子的定義(平衡二叉樹上結(jié)點的平衡因子絕對值 不大于1)6、在含有n個結(jié)點的AVL樹上執(zhí)行搜索、插入、刪除操作的時間復(fù)雜度為 O(logn)7、AVL樹上插
12、入和刪除操作中的平衡旋轉(zhuǎn)操作不作為復(fù)習(xí)要點八、第9章圖1、圖的基本概念,包括無向圖、有向圖、頂點的度、頂點的入度和出度、完全 圖、子圖、簡單路徑、簡單環(huán)、連通圖、連通分量、強連通圖、強連通分量、 生成樹。連通分量是無向圖中的極大連通子圖生成樹是無向連通圖的極小連通子圖在生成樹中每兩個頂點間有且僅有一條路徑具有n個頂點,少于n-1條邊的圖一定是非連通圖具有n個頂點,多于n-1條邊的圖中必存在環(huán)具有n個頂點,n-1條邊的圖不一定是生成樹在無向圖中,所有頂點的度數(shù)之和是無向邊數(shù)的2倍在有向圖中,所有頂點的出度或入度之和等于有向邊數(shù)具有n個頂點的無向完全圖具有n(n-1)/2條邊;具有n個頂點的有向完
13、全圖 具有n(n-1)條弧例題:具有18個頂點的無向完全圖具有153條邊。若含有32個頂點的無向圖是一個環(huán),則它有衛(wèi)二棵生成樹。具有n個頂點的無向連通圖的生成樹含有n-1 條邊。2、圖的存儲結(jié)構(gòu)無向圖的鄰接矩陣一定是對稱的,有向圖的鄰接矩陣不一定對稱。有向圖鄰接矩陣的第i行非零元素的個數(shù)為第i個頂點的出度,第i列非零 元素的個數(shù)為第i個頂點的入度,第i個頂點的度為第i行和第i列非零元 素的個數(shù)之和。用鄰接矩陣表示圖,很容易確定圖中任意兩個頂點是否有邊相連。在無向圖的鄰接表中,第i個頂點的度為第i條鏈表中的結(jié)點數(shù);在無向圖 的鄰接表中,所有鏈表的結(jié)點總數(shù)是圖中邊數(shù)的2倍在有向圖的鄰接表中,第i個
14、頂點的出度為第i條鏈表中的結(jié)點數(shù),為求結(jié) 點的入度需要遍歷整個鄰接表。在有向圖的鄰接表中,所有鏈表的結(jié)點總數(shù) 等于圖中的有向邊數(shù)在有向圖的逆鄰接表中,第i個頂點的入度為第i條鏈表中的結(jié)點數(shù)在鄰接表上容易找到任一頂點的第一個鄰接點和下一個鄰接點,但要判定任 兩個頂點i、j間是否有邊或弧相連,則需搜索第i條或第j條鏈表。鄰接表更適合于表示稀疏圖,鄰接矩陣更適合于表示稠密圖。給出一個圖,會用鄰接表或鄰接矩陣表示該圖例題:含有n個頂點,e條邊的無向圖對應(yīng)的鄰接表中有2e個鏈結(jié)點(不包括鄰接表的表頭結(jié)點)。含有n個頂點,e條弧的有向圖對應(yīng)的鄰接表中有 個鏈結(jié)點(不包括鄰 接表的表頭結(jié)點)。3、圖的廣度優(yōu)
15、先搜索和深度優(yōu)先搜索給出一個無向連通圖,會寫出它的深度優(yōu)先序列和廣度優(yōu)先序列,會畫出它 的深度優(yōu)先生成樹和廣度優(yōu)先生成樹。廣度優(yōu)先搜索類似于樹的層次遍歷,深度優(yōu)先搜索類似于樹的先序遍歷從無向連通圖的任一頂點出發(fā)進行一次深度優(yōu)先搜索或廣度優(yōu)先搜索即可訪 問所有頂點進行圖的廣度優(yōu)先搜索時,需要用到隊列這種數(shù)據(jù)結(jié)構(gòu)4、求最小生成樹的Prim算法給出一個無向連通網(wǎng),會使用Prim算法求出它的最小生成樹,并能寫出求解過程。理 解課件中在Prim算法這一節(jié)給出的例題5、求單源最短路徑的Dijkstra算法給出一個有向賦權(quán)圖,會使用Dijkstra算法求從指定源點到其余頂點的最短路徑和最短 路徑長度,并能寫
16、出求解過程。理解課件中在Dijkstra算法這一節(jié)給出的例題6、拓?fù)渑判驎σ粋€有向無環(huán)圖進行拓?fù)渑判驒z查有向圖是否存在回路的一種方法是對有向圖進行拓?fù)渑判?。若所有頂點均包含在拓 撲序列中,則有向圖中必不存在環(huán)。也可利用深度優(yōu)先遍歷進行拓?fù)渑判颍赡稠旤c出發(fā)進行深度優(yōu)先遍歷時,最先退出dfs 過程的即出度為0的頂點,是拓?fù)湫蛄兄凶詈笠粋€頂點。但深度優(yōu)先遍歷算法會忽略圖 中有向環(huán)的存在,對于存在有向環(huán)的圖不能檢測出環(huán)的存在。7、關(guān)鍵路徑對給定的AOE網(wǎng),能計算出各頂點所代表事件的最早和最晚發(fā)生時間,各活動的最早 開始時間、最晚開始時間和時間余量,能找出關(guān)鍵活動和關(guān)鍵路徑,求出工程的工期。 理解課件中在關(guān)鍵路徑這一節(jié)給出的例題只有在不改變關(guān)鍵路徑的情況下,提高關(guān)鍵活動的速度才有效提前完成非關(guān)鍵活動并不能加快工程的進度8、二部圖的完全匹配一定是最大匹配,但最大
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 南昌市污泥固化處理工程方案
- 2025年天津市創(chuàng)佳時代科技企業(yè)管理有限公司招聘考試筆試試題(含答案)
- 2025年濟寧金鄉(xiāng)縣城鎮(zhèn)公益性崗位招聘考試筆試試題(含答案)
- 老年癡呆中醫(yī)課件
- 老年護理課件結(jié)尾
- 老年護理職業(yè)前景
- 老師的視頻課件圖片
- 老師開班會課件模板
- 老師如何開班會課件
- 餐廳裝修工程進度與付款管理合同
- T/CNFAGS 16-2024綠色甲醇分級標(biāo)準(zhǔn)(試行)
- 國民經(jīng)濟行業(yè)分類代碼(2024年版)
- 房屋市政工程生產(chǎn)安全重大事故隱患判定檢查表(2024版)
- 2025年財會業(yè)務(wù)知識競賽題庫及答案(360題)
- 大連農(nóng)商銀行2024年招聘172人管理單位遴選500模擬題附帶答案詳解
- 鋼卷尺檢定證書
- 齊魯醫(yī)學(xué)健康知識-遠(yuǎn)離“三高”
- 安徽省工傷職工停工留薪期分類目錄
- 混凝土試件養(yǎng)護出入臺賬
- 2022醫(yī)學(xué)課件出疹性傳染病
- 職業(yè)安全衛(wèi)生知識競賽題
評論
0/150
提交評論