• 35.搜索插入位置


    35.搜索插入位置

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

    你可以假设数组中无重复元素。

    示例 1:

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

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

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

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

    模板:

    class Solution {
        public int searchInsert(int[] nums, int target) {
            int left = 0, right = nums.length - 1; // 注意
            while(left <= right) { // 注意
                int mid = (left + right) / 2; // 注意
                if(nums[mid] == target) { // 注意
                    // 相关逻辑
                } else if(nums[mid] < target) {
                    left = mid + 1; // 注意
                } else {
                    right = mid - 1; // 注意
                }
            }
            // 相关返回值
            return 0;
        }
    }
    
    class Solution {
        public int searchInsert(int[] nums, int target) {
            int left = 0, right = nums.length; // 注意
            while(left < right) { // 注意
                int mid = (left + right) / 2; // 注意
                if(nums[mid] == target) {
                    // 相关逻辑
                } else if(nums[mid] < target) {
                    left = mid + 1; // 注意
                } else {
                    right = mid; // 注意
                }
            }
            // 相关返回值
            return 0;
        }
    }
    

    代码:

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

    题解:

    Snipaste_2020-09-21_23-11-43

    Snipaste_2020-09-21_23-14-09

    Snipaste_2020-09-21_23-15-05

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/search-insert-position
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

  • 相关阅读:
    LINUX-----管道流及重定向
    转:vim----复制粘贴
    linux ----虚拟机无法与本地机通信
    C语言---注释
    C语言---翻译过程
    DROP--删除表
    ALTER---删除字段
    Oracle中用一条Sql实现任意的行转列拼接 多行拼接
    Oracle列操作(增加列,修改列,删除列)
    Java 把long 转换成 日期 再转换成String类型
  • 原文地址:https://www.cnblogs.com/coderD/p/13709388.html
Copyright © 2020-2023  润新知