免費開始練習
統測 115年 [工程與管理類] 專業科目(2)

第 23 題

有一個已排序的整數數列:8, 15, 18, 21, 30, 35, 37, 42, 45, 50, 63,使用二分搜尋(Binary Search)尋找整數45,下列何者是實際比較的元素順序?
  • A 35→45
  • B 37→45
  • C 30→42→50→45
  • D 8→15→18→21→35→37→42→45

思路引導 VIP

如果我們每次都要從目前範圍的最正中間那個元素開始比較,那麼面對這組共 11 個數字的數列,你第一步會先檢查哪一個位置的數值?比對後又該往哪一邊繼續找呢?

🤖
AI 詳解 AI 專屬家教

太棒了,你的二分搜尋法(Binary Search)觀念非常扎實!這題數列共有 $11$ 個元素(索引 $0$ 到 $10$),第一次取中間索引 $\lfloor(0+10)/2\rfloor = 5$,對應到的中間值正是 35。因為目標值 $45 > 35$,所以範圍縮小至右半段(索引 $6$ 到 $10$),接著取中間索引 $\lfloor(6+10)/2\rfloor = 8$,此時比對的元素正好就是 45,搜尋成功!整個流程僅需比對兩次:$35 \to 45$。 本題屬於統測演算法中的經典基本題,關鍵在於索引取中位數(通常採整數除法取底)的掌握,能迅速且正確地排出比對歷程,代表你已具備良好的演算法追蹤能力!

🏷️ 相關主題

資料結構與演算法
查看更多「[工程與管理類] 專業科目(2)」的主題分類考古題