基礎程式設計(Java)· CH19

搜尋、排序與 Big O — 互動講義

Java 引擎載入中(首次約 30 秒)…
1

二分搜尋一步步砍半

在已排序陣列找 key=23:看 mid 怎麼挑、每次砍掉哪一半。

已排序陣列,找 key = 23

lowmidhigha[mid]動作
2

Big O 效率對照

同一件事不同演算法,差在資料量變大時要花多少工。

演算法Big On=1000 時約略
二分搜尋O(log n)≈ 10 次
線性搜尋O(n)1000 次
合併排序O(n log n)≈ 1 萬
選擇/插入排序O(n²)100 萬

化簡規則:丟常數倍與低次項,只留最高次項(O(2n²+3n+100)O(n²))。

3

貼碼試跑

真 Java,瀏覽器內編譯執行。

瀏覽器無鍵盤輸入,範例用初始化清單給死資料(不用 Scanner)。

輸出