15 若有 n 個資料需要排序,下列敘述何者正確? (A) Quick sor..-阿摩線上測驗
2F
|
3F abaochang 國三下 (2021/09/24)
常見的六種時間複雜度與演算法 O(1):陣列讀取
O(n):簡易搜尋 O(log n):二分搜尋 O(n²):選擇排序法、插入排序法 O(n logn):合併排序法 O(2^n):費波那契數列 快速排序(Quick sort)
最糟O(n^2) 最佳O(nlogn) 平均O(nlogn) 合併排序 (Merge Sort)
時間複雜度皆為 O(n log n) 的演算法,代表著執行時間會隨著以二為底的 log n 再乘上 n 成長。最常見的例子是合併排序法 (Merge Sort) 與快速排序法 (Quick Sort)
步驟可以分為「拆分」與「合併」
每回合的合併需要花:O(n) 總共需要回合數:O(log n) |