看板 TransCSI 關於我們 聯絡資訊
※ 引述《choufeng (Timothy)》之銘言: : 這是我在做分類題庫時候我算出來的和解答不一樣想請教: : 現在未排序資料 31 15 22 50 56 102 92 80 78 47 66 : 利用二元搜尋法,尋找資料22,需執行多少次才可完成任務? : (A)2次 : (B)3次 : (C)4次 : (D)5次 : 解答是(A) 我覺得那本書作者是這樣想 第一次先比最中間(第六筆)資料所以比102小往左邊搜尋 第二次再比左邊中間(第三筆)就找到了 不過這樣解怪怪的 因為二分搜尋法一定要先排序好 所以排完後順序是 15 22 31 47 50 56 66 78 80 92 102 第一次搜尋找到跟56比 第二次搜尋找到跟31比 第三次搜尋找到跟15比 第四次搜尋找到22 不過看你程式怎麼寫有人可能只要搜尋3次就行 總而言之假如將這數列排序好最少需要3次才能搜尋到 ps:有寫錯就請多多指教 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.232.149
choufeng:我也覺得很奇怪為什麼答案是2次,但這本書錯誤的 11/07 23:28
choufeng:錯誤解答到是蠻多的 11/07 23:28
choufeng:不錯也許題意是要你沒排序下去找吧~我想 11/07 23:30
choufeng:不過如果是這樣子題目出的很挺差的~讓人不知道到底要不排 11/07 23:30