public class TestBinarySerach {
public static void main(String[] args) {
int[] arr = {7, 8, 9, 10, 12, 20, 30, 40, 50, 80, 100};
System.out.println(binarySearch(arr,10));
System.out.println(binarySearch(arr,20));
System.out.println(binarySearch(arr,100));
}
public static int binarySearch(int[] array,int targetEle) {
int before = 0;
int after = array.length-1;
int count = 0;
while(before<=after) {
count++;
int middle = (before+after)/2;
if(targetEle == array[middle]) {
System.out.println("遍歷次數"+count);
return middle;
}
if(targetEle>array[middle]) {
before = middle+1;
}
if(targetEle<array[middle]) {
after = middle-1;
}
}
System.out.println("遍歷次數"+count);
return -1;
}
}
Java二分法查找測試
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.