數(shù)據(jù)結(jié)構(gòu)期末復(fù)習(xí) 一小時(shí)不一定不掛科(?)系列

時(shí)間復(fù)雜度:
沒有循環(huán)或遞歸的算法,時(shí)間復(fù)雜度:O(1)
循環(huán)n次,O(n)
冒泡排序(兩循環(huán)嵌套),O(n2)
二分查找(長度為n每次除以2)O(log2 n)
遞歸計(jì)算斐波那契數(shù)列,O(2的n次方)
嵌套:總復(fù)雜度=兩復(fù)雜度的乘積;
并列:總復(fù)雜度=最大的時(shí)間復(fù)雜度。
線性表、棧(先進(jìn)后出)和隊(duì)列(先進(jìn)先出)
特定:
樹和二叉樹
前中后序遍歷
根據(jù)前中后序畫二叉樹
哈夫曼樹

圖
深度、廣度優(yōu)先遍歷

最小生成樹(找最小連通)
prim算法:從節(jié)點(diǎn)出發(fā),找最近點(diǎn)

Kruskal算法:從邊出發(fā),找最短邊

【注】最后把順序?qū)懗鰜恚荒艽嬖陂]環(huán)
最短路徑(從一個(gè)節(jié)點(diǎn)到每一個(gè)節(jié)點(diǎn)的最小路徑)


查找
平均查找長度的計(jì)算(比較(查找)了幾次長度就是幾)
二叉排序樹的構(gòu)造和查找(比當(dāng)前節(jié)點(diǎn)的大放到左子樹,小放到右子樹)
哈希表的構(gòu)造和查找

線性探查法:從前往后依次找空位
平方探查法:發(fā)生沖突先找位序+1,再找位序-1,再找位序+4,-4,+9,-9…以此類推直到找到空位。如果超出首節(jié)點(diǎn)時(shí)緊接著從首節(jié)點(diǎn)往尾節(jié)點(diǎn)查找。

標(biāo)簽: