美文网首页
35. 搜索插入位置

35. 搜索插入位置

作者: 一只小星_ | 来源:发表于2019-07-28 18:01 被阅读0次

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
    你可以假设数组中无重复元素。

    输入: [1,3,5,6], 5
    输出: 2

    输入: [1,3,5,6], 2
    输出: 1

    输入: [1,3,5,6], 7
    输出: 4

    一看到排序数组就想 二分法 能不能做。
    下面是一个通用二分模版。

     public int searchInsert(int[] nums, int target) {
            int left=0;
            int right=nums.length;
            while (left<right){
                int mid = (left+right) >>> 1;
                if (nums[mid] < target){
                    left=mid+1;
                }else {
                    right=mid;
                }
            }
            return left;
        }
    }
    

    相关文章

      网友评论

          本文标题:35. 搜索插入位置

          本文链接:https://www.haomeiwen.com/subject/myeprctx.html