一个小程序:二分查找法寻找插入点详解编程语言

public class ArrayDemo07 { 
 
	/** 
	 * @param args 
	 */ 
	public static void main(String[] args) { 
		// 获取插入点,利用二分查找的变种进行插入点的查找 
		//min和max一定会在key值的前面以及后面,不可能出现 
		//min,max都比key大或者小 
		int[] arr={1,3,8,12,19,45,49,52,66,75}; 
		System.out.println(point(arr,99)); 
 
	} 
	 
	public static int point(int[] arr,int key) 
	{ 
		int min=0; 
		int max=arr.length-1; 
		int mid=(min+max)/2; 
		while(min<=max) 
		{ 
			if(arr[mid]>key) 
				max=mid-1; 
			else if(arr[mid]<key) 
				min=mid+1; 
			else 
				return mid; 
			mid=(min+max)/2; 
		} 
		return min; 
	} 
 
}

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/17703.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论