算法面试笔记(二)数组
二分查找
static int binarySearch( int arr[], int target ) {
int l = 0;
int r = arr.length - 1; //查询[l,r]这个范围
while( l <= r) {
int mid = (r - l)/2 + l;
if(arr[mid] == target) {
return arr[mid];
}else if(arr[mid] > target) {
r = mid - 1;
}else {
l = mid + 1;
}
}
return -1;
}
查看17道真题和解析