数组二分查找法

93 阅读1分钟
		int[] arr = {11,22,33,44,55,66,77,88};
		
		System.out.println(searchFunction(22, arr));		
	}
	public static int searchFunction(int a, int[] arr) {
	
		int min = 0;
		int max = arr.length-1;
		int mid = (min + max)/2;
		while(arr[mid] != a) {
	
		if (a > arr[mid]) {		
		min = mid + 1;		
		}else if(a < arr[mid]) {
		max = mid -1;
		}
		mid = (min + max)/2;
	
		}
		
		if(min > max) {
			return -1;
		}
		return mid;
	} 

image.png