適用情況
在已排序的 array 中搜尋指定數值的位置。
基本概念
最初將左右 pointers 設定在 array 兩端,計算兩 pointers 的中點。
如果中點數值大於指定搜尋的數值,代表指定數值會出現在左半邊,因此讓右 pointer 改指向(中點-1),反之如果中點數值小於指定搜尋的數值則更新左 pointer 至(中點+1)。
更新後繼續在左右 pointers 之間搜尋,直到中點數值等於指定數值,或左 pointer > 右 pointer(代表 array 不包含指定數值)。