二分法查找:前提必须有序
在这里插入代码片
boolean isFlag=true;
int[] arr2=new int[] {-48,-14,2,34,54,66,75,5,21,33};
int dest1=-35;
int head=0;//初始索引
int end=arr.length-1;//末索引
while(head<=end) {
int middle=(head+end)/2;
if(dest1==arr2[middle]) {
System.out.println("找到了指定元素,位置为:"+middle);
isFlag=false;
break;
}else if(arr2[middle]>dest1) {
end=middle-1;
}else {
head=middle+1;
}
}
if(isFlag) {
System.out.println("很遗憾,没有找到的啦!");
}