题目

分析

二分查找的变种,一般的二分查找都是将等于,小于,大于,分为三个判断的分支,变种的话,就是将等于放入到大于或者小于中,这两种最后也是不同的。
首先是判断的条件,肯定是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;
    }
}

学习情况

一次