二分查找算法
//二分查找要針對順序數組
public static int search(int arr[],int value){
int l = 0,r = arr.length;
while(l<=r){
//這樣求得的mid值就不會出現溢出的問題,若寫成int mid = (l + r) / 2;可能出現溢出
int mid = l+(r-l)/2;
if(arr[mid] == value)
return mid;
else if(value > arr[mid])
l = mid + 1;
else
r = mid - 1;
}
//沒有找到返回-1
return -1;
}