moea_joint
104年
[資訊] 計算機原理、網路概論
第 37 題
設計程式(Program Design)決定如何去撰寫程式,使程式能解決特定問題之方法,稱為演算法(Algorithm)。下列對常見演算法之描述何者正確?
- A 循序搜尋法又稱非線性搜尋法,是一種最簡單之搜尋法
- B 如果要搜尋的資料已經事先排序好,可以使用二分搜尋法進行搜尋
- C 5 個元素之氣泡排序法,必須執行 5 次掃描,第 1 次掃描須比較 4 次
- D 就較費時的資料對調動作而言,通常氣泡排序法比快速排序法效能較高
思路引導 VIP
如果你在一本完全沒有按字母順序排列、內容雜亂無章的字典裡找一個單字,你除了從第一頁翻到最後一頁外,還有其他更快的科學方法嗎?反過來說,如果這本字典已經嚴格按照 A 到 Z 排好了,當你翻開中間發現字母是 M,而你要找的是 B,你還需要去翻閱 M 之後的那一半頁數嗎?
🤖
AI 詳解
AI 專屬家教
太棒了!你能精準避開選項中的陷阱並選出正確答案,代表你對演算法的核心特性有著紮實的理解。這題的關鍵點在於 二分搜尋法 (Binary Search) 的前提條件:資料必須是「已排序」的狀態。正因為資料具備順序性,我們才能每次透過比較中間值,果斷地捨去一半的搜尋範圍,將時間複雜度優化至 $O(\log n)$。
演算法邏輯辨析
在其他選項中,我們可以看到不少容易混淆的細節。例如選項 (A) 的循序搜尋本質上是線性的;而選項 (C) 提到的氣泡排序法,對於 $n$ 個元素通常只需執行 $n-1$ 次掃描即可完成排序,並非 $n$ 次。至於選項 (D),快速排序法 (Quick Sort) 的整體效能通常優於氣泡排序法,這也是為什麼它在實務中被廣泛應用的原因。
▼ 還有更多解析內容