1 public class Day042 2 { 3 public static void main(String[] args) 4 { 5 int[] arr = new int[]{1, 4, 5, 7, 9, 14, 24}; 6 System.out.print(halfSearch(arr, 6)); 7 } 8 static int halfSearch(int[] arr, int x) 9 { 10 int min = 0; 11 int max = arr.length - 1; 12 int mid; 13 while (min <= max) 14 { 15 mid = (min + max) / 2; 16 if (x > arr[mid]) 17 { 18 min = mid + 1; 19 } else if (x < arr[mid]) 20 { 21 max = mid - 1; 22 } else 23 { 24 return mid; 25 } 26 } 27 // return -1;//如果在给定数组中查不到X那么返回-1; 28 return min;// 如果如果在给定数组中查不到X,那么返回插入X到数组中的index;F 29 } 30 }