public class ArrayUtilities {
public static void main(String[] args) {
int[] array1 = { 1, 2, 3, 4, 5, 10, 15, 30, 32 };
int target1 = 30;
System.out.println(binarySearch(array1, target1));
}
public static boolean binarySearch(int[] array, int target) {
int left = 0;
int right = array.length - 1;
while (right >= left) {
int middle = (right - left)/2;
if (target == array[middle]) {
return true;
} else if (target > array[middle]) {
left = middle - 1;
} else if (target < array[middle]) {
right = middle + 1;
}
}
return false;
}
}
每當我運行代碼時,它都不會打印任何內容,也不會說錯誤。我不明白爲什麼。 請幫忙! 預先感謝您。如何在java中進行二進制搜索
Arrays.binarySearch有什麼問題? (http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html) –
它的功課,我不能使用任何庫方法,但無論如何謝謝你! – user2826974
你錯了,它輸出至少爲'true'或'false',你可以使用調試器來查看執行過程中發生了什麼 –