public class TestSearch {
public static void main(String[] args) {int a[] = {1,2,3,4,5,7,9,23,45,68,98,111,333,999};int i =99;System.out.println(binarySearch(a, i));}public static int binarySearch(int a[],int num){if(a.length == 0){return -1;}int startPos = 0;int lastPos = a.length-1;int m = (startPos+lastPos)/2;while(startPos <= lastPos){if(num == a[m]){return m;}if(num > a[m]) {startPos = m+1;}if(num < a[m]){lastPos = m-1;}m = (startPos+lastPos)/2;}return -1;}
}
二分法查找有序数组中的元素
最新推荐文章于 2020-07-17 12:23:49 发布