精華區beta NTUE-CS99 關於我們 聯絡資訊
今日進度: ch 6 - ch 8 下週(3/25)要小考 範圍是 ch 2 、 ch 3 、 ch 4 、 ch 6 、 ch 7 、 ch 8 ch 2 ‧ 分析演算法: a. increamtal ex: Insertion sort b. divide & conquer ex: Marge sort ‧ Insertion sort 的時間複雜度最佳是 O(n) ; 最差是 O(n^2) ‧ Marge sort 的時間複雜度最佳最差都是 O(nlgn) ch 3 ‧ Θ Tight Bound : f(n)=Θ(g(n)) → c1 * g <= f <= c2 * g ‧ Ο Upper Bound : f(n)=Ο(g(n)) → f <= cg ο : f(n)=ο(g(n)) → f < cg ‧ Ω Lower Bound : f(n)=Ω(g(n)) → cf <= f ω : f(n)=ω(g(n)) → cf < g ‧ 兩個方程式 f、g 只有四種關係 Θ+Ο+Ω 或 Ο+ο 或 Ω+ω 或 沒有關係 ch 4 ‧ 簡化 T(n)=aT(n/b)+f(n) : 代入化簡 、 樹狀圖 、 Master theory ch 6 ‧ Build a heap = Ο(n) ‧ Remove the root node = Ο(lgn) ‧ Add a node = 最佳 Ο(1) 最差 Ο(lgn) ch 7 ‧ Quicksort = 最佳 Ο(nlgn) 最差 Ο(n^2) ‧ 不限定數字的排序法最佳時間複雜度為Ο(nlgn) ( 用decision tree證 ) ch 8 ‧ Counting sort : 有n個小於<k的整數的排序 用陣列儲存每個數字出現的次數 再依序輸出 時間複雜度是Ο(n) ‧ Radix sort : n個固定位數的數字( ex 三位數,小數也可 ) 時間複雜度Ο(n) ‧ Bucket sort : 先把n個東西分類成小堆簡化問題再排序 時間複雜度Ο(n)