java折半查找指定数值的最左边的位置

来源:互联网 发布:2016网络新词汇 编辑:程序博客网 时间:2024/05/21 07:17
public static int searchChar(int[] arr,int val){
int first = 0;
int end = arr.length - 1;
int mid = first + (end - first)/2;
int index = -1;//最左边的位置,默认为-1
while(first <= end){
if(arr[mid] > val){
end = mid - 1;
}else if(arr[mid] < val){
first = mid + 1;
}else{
index = mid;
end = mid - 1;
}
mid = first + (end - first)/2;
}
return index;
}
0 0
原创粉丝点击