package p;

public class NumberSearch {

/**
* @param args
* 二分查找法
*/
public static void main(String[] args) {

int[] arr = new int[] { 12, 23, 34, 45, 56, 67, 77, 89, 90 };
System.out.println(NumberSearch.NumSearch(arr, 12));
System.out.println(NumSearch(arr, 45));
System.out.println(NumSearch(arr, 67));
System.out.println(NumSearch(arr, 89));
System.out.println(NumSearch(arr, 99));
}

public static int NumSearch(int arr[], int key) {
int start = 0;
int end = arr.length - 1;
while (start <= end) {
int middle = (start + end) / 2;
if (key < arr[middle]) {
end = middle - 1;
} else if (key > arr[middle]) {
start = middle + 1;
} else {
return middle;
}
}
return -1;
}

}

相关文章:

  • 2021-11-06
  • 2022-01-11
  • 2022-01-04
  • 2021-07-08
  • 2021-07-24
  • 2021-12-03
  • 2022-12-23
  • 2021-04-20
猜你喜欢
  • 2021-11-06
  • 2021-05-17
  • 2021-07-03
  • 2022-12-23
  • 2021-12-08
  • 2021-09-22
  • 2021-12-11
相关资源
相似解决方案