二分查找

来源:互联网 发布:阿里云app图标 编辑:程序博客网 时间:2024/05/01 07:12
//找不到、数组为空返回-1,否则返回数组下标public class BinarySearch {public static int search(int[] a, int num) {if(a==null||a.length==0){return -1;}int low = 0;int high = a.length - 1;while (low <= high) {int mid = (low + high) / 2;if (a[mid] == num) {return mid;} else if(a[mid] > num) {high = mid - 1;} else {low = mid + 1;}}return -1;}public static void main(String[] args) {int[] a = {1,2,3,4,7,8,9,10,12,14};System.out.println(search(a,7));}}