二分查找

import java.util.Random;

public class test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		int[] a={1,4,5,7,7,7,7,8,9,12,43,65};
		
		int ercha = erfen(77, a);
		System.out.println(ercha);
		
	}
	
	public static int erfen(int k,int[] a) {
		
		int left = 0;
		int right=a.length-1;
		int middle=0;
		if(k<a[left]||k>a[right]||left>right){
			return -1;
		}
		while (left<=right) {
			middle=(left+right)/2;
			if (a[middle]==k) {
				return a[middle];
			}else if (a[middle]>k) {
				right=middle-1;
			}else if (a[middle]<k) {
				left=middle+1;
			}
		}
		return -1;
	}

}

posted @ 2020-12-05 18:32  文森特·Du  阅读(86)  评论(0编辑  收藏  举报