二分查找
代码实现
/** * @author laoduan * @create 2020-05-10-14:14 *///使用二分查找的前提是该数组是有序的public class BinarySearch { public static void main(String[] args) { int arr[]={1,8,10,89,1000,1234}; int resIndex = binarySearch(arr,0,arr.length-1,88); System.out.println("resIndex="+resIndex); } public static int binarySearch(int[] arr,int left,int right,int findval){ if(left>right){ return -1; } int mid = (left+right)/2; int midVal = arr[mid]; if(midVal<findval){ return binarySearch(arr,mid+1,right,findval); }else if(midVal>findval){ return binarySearch(arr,left,mid-1,findval); } else{ return mid; } }}