由于比较简单,就直接贴源码了。
package demo;
public class BinarySearch {
public static void main(String[] args) {
int[] input = {1,3,5,7,9,100,200,300,301,305};
System.out.println("找到的位置下标为: "+BinarySearch.binarySearch(input, 1)
+ " input 的长度 " + input.length);
}
public static int binarySearch(int[] input,int target) {
int low = 0;
int high = input.length-1;
while(low<=high) {
int middle = (low+high)/2;
if(input[middle] == target) {
return middle;
} else if(input[middle] < target) { //目标在中点的左边
low = middle + 1;
} else { //目标在中点的右边
high = middle -1 ;
}
}
return -1;
}
}
本文提供了一个简单的二分查找算法的Java实现示例。通过一个包含有序整数的数组进行演示,介绍了如何查找特定目标值及其所在位置下标。
7908

被折叠的 条评论
为什么被折叠?



