该算法采用了分治思想 该算法只对有序数组有效 使用前需要先排序
int[] arr3
= new int[]{-99,-54,-2,0,2,33,43,256,999};
boolean isFlag
= true;
int number
= 256;
int head
= 0;
int end
= arr3
.length
- 1;
while(head
<= end
){
int middle
= (head
+ end
) / 2;
if(arr3
[middle
] == number
){
System
.out
.println("找到指定的元素,索引为:" + middle
);
isFlag
= false; break; }else if(arr3
[middle
] > number
){
end
= middle
- 1;
}else{
head
= middle
+ 1;
}
}
if(isFlag
){
System
.out
.println("未找打指定的元素");
}
转载请注明原文地址: https://mac.8miu.com/read-516768.html