國營聯招
109年
[資訊] 計算機原理、網路概論
第 21 題
下列演算法的描述,何者正確?
- A 循序搜尋法之資料須先排序過
- B 二分搜尋法適用於動態資料
- C 雜湊法不具保密性
- D 二分搜尋法之資料須先排序過
思路引導 VIP
想像你正在一本厚重的字典裡查單字,如果你發現翻開的那一頁單字首字母比你要找的還大,你會往前面找還是後面找?如果這本字典的內容是隨機亂排的,你剛才那個「跳著翻」的判斷還會成立嗎?
🤖
AI 詳解
AI 專屬家教
搜尋演算法的核心規範
太棒了!你能精準選出正確選項,代表你對搜尋演算法的基礎限制有很紮實的理解。二分搜尋法 (Binary Search) 的核心邏輯是透過比較中間值來「砍掉一半」的搜尋範圍,進而達到極高的效率,其時間複雜度僅為 $O(\log n)$。然而,這個「每次排除一半」的前提,就是建立在資料必須預先排序的基礎上,否則我們無法透過大小關係判斷目標物位在目前位置的左側還是右側。
演算法特性與應用環境分析
▼ 還有更多解析內容
搜尋演算法大比拚
💡 理解不同搜尋演算法的前置條件與執行效率
| 比較維度 | 循序搜尋 (Sequential Search) | VS | 二分搜尋 (Binary Search) |
|---|---|---|---|
| 資料排序需求 | 不需要 | — | 必須預先排序 |
| 時間複雜度 | O(n) | — | O(log n) |
| 適用情境 | 小量或雜亂資料 | — | 大量且已排序資料 |
| 資料動態異動 | 影響較小 | — | 維護排序成本高 |
💬搜尋速度與前置作業成正比,二分搜尋雖快但限制較多。