1. 演算法的幾個特徵是什麼。
2. 演算法複雜性的定義。大o、θ、ω、小o分別表示的含義。
3. 遞迴演算法的定義、遞迴演算法的兩要素。
4. 分治演算法的思想,經典的分治演算法(全排列、二分搜尋、歸併排序、快速排序、線性時間選擇、最接近點對問題)。
5. 動態規劃演算法解題框架,動態規劃演算法的兩個要素是什麼?備忘錄方法是什麼?
6. 經典的動態規劃問題(矩陣連乘問題、最長公共子串行問題、0-1揹包問題)。
7. 貪心演算法的思想,貪心演算法的兩個要素。
8. 經典的貪心問題(活動安排問題、揹包問題、裝載問題、哈夫曼編碼、單源最短路徑、最小生成樹問題)。
9. 回溯法的思想,回溯法中有哪兩種典型的模型。
10. 經典的回溯演算法(n後問題、0-1揹包問題、旅行售貨商問題)。
11. 分支限界法思想,有哪兩種分支限界法。
12. 經典的分支限界演算法(0-1揹包問題、旅行售貨商問題)。
1. 資料結構的定義。
2. 棧的兩個應用:括號匹配和表示式的計算。是怎麼應用的?表示式計算用的是哪種表達方式?有什麼好處?
3. 字串匹配演算法:樸素的匹配演算法、kmp演算法。
4. 二叉樹前序、中序、後序遞迴遍歷演算法。二叉樹前序非遞迴遍歷演算法。
5. 堆,建堆演算法,堆的插入和刪除演算法,堆排序。
6. 雜湊。雜湊函式的有哪些種?餘數的取法? 處理衝突的方法? 閉雜湊方法有哪些?
7. 二叉搜尋樹的搜尋、插入、刪除。時間複雜度。
8. 二叉平衡樹的插入結點的原理,有哪幾種旋轉方式?分別適用於哪種情況。分析二叉平衡樹的時間複雜度。
9. 紅黑樹的定義,紅黑樹的效能分析和與二叉平衡樹的比較。
10. 圖有哪些儲存表示。
11. 鍊錶插入排序、鍊錶歸併排序。
12. 常見的有哪幾種排序演算法,試比較其時間複雜度,以及是否穩定,及各自使用的情形。
13. 常用分配排序有哪幾種? 基數排序的定義,分類及原理。
14. b樹、b+樹、trie的概念及用途,新增刪除結點的原理。
面試複習重點 演算法 資料結構 山科大牛陳磊整理
1.演算法的幾個特徵是什麼。2.演算法複雜性的定義。大o 小o分別表示的含義。3.遞迴演算法的定義 遞迴演算法的兩要素。4.分治演算法的思想,經典的分治演算法 全排列 二分搜尋 歸併排序 快速排序 線性時間選擇 最接近點對問題 5.動態規劃演算法解題框架,動態規劃演算法的兩個要素是什麼?備忘錄方法是...
複試 資料結構
1 陣列和鍊錶的區別?從邏輯結構來看 陣列的儲存長度是固定的,它不能適應資料動態增減的情況。鍊錶與陣列相反,它能夠動態分配儲存空間以適應資料動態增減的情況,並且易於進行插入和刪除操作。從訪問方式來看 陣列在記憶體中是一片連續的儲存空間,可以通過陣列下標對陣列進行隨機訪問,訪問效率較高。鍊錶是連式儲存...
考研複試面試準備 資料結構篇
一些資料物件以及附加在這些資料物件上的集合的操作 尾插法建立單鏈表,n個元素儲存在陣列a中 void createlistr lnode c,int a,int n r next null 頭插法 void createlistf lnode c,int a,int n 棧 只能在一端進行插入或刪除...