题目
分析
二分查找的变种,一般的二分查找都是将等于,小于,大于,分为三个判断的分支,变种的话,就是将等于放入到大于或者小于中,这两种最后也是不同的。
首先是判断的条件,肯定是start<=end,肯定有等于号。
将等于和大于算作是一种情况。
最后返回的是start
代码总结
public class Solution { public int searchInsert(int[] num, int target) { int start=0; int end=num.length-1; int mid=0; while(start<=end) { mid=(start+end)/2; if(num[mid]>=target) { end=mid-1; }else { start=mid+1; } } return start; } }
学习情况
一次