zoukankan      html  css  js  c++  java
  • 0035. Search Insert Position (E)

    Search Insert Position (E)

    题目

    Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.

    You may assume no duplicates in the array.

    Example 1:

    Input: [1,3,5,6], 5
    Output: 2
    

    Example 2:

    Input: [1,3,5,6], 2
    Output: 1
    

    Example 3:

    Input: [1,3,5,6], 7
    Output: 4
    

    Example 4:

    Input: [1,3,5,6], 0
    Output: 0
    

    题意

    给定一个数组,找到给定值的下标;如果数组中不存在给定值,则返回该值应当插入位置的下标。

    思路

    直接二分查找。


    代码实现

    Java

    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) {
                    left = mid + 1;
                } else if (nums[mid] > target) {
                    right = mid - 1;
                } else {
                    return mid;
                }
            }
            return left;
        }
    }
    

    JavaScript

    /**
     * @param {number[]} nums
     * @param {number} target
     * @return {number}
     */
    var searchInsert = function (nums, target) {
      let left = 0, right = nums.length - 1
      while (left <= right) {
        let mid = Math.trunc((right - left) / 2) + left
        if (nums[mid] < target) {
          left = mid + 1
        } else if (nums[mid] > target) {
          right = mid -1
        } else {
          return mid
        }
      }
      return left
    }
    
  • 相关阅读:
    Python-TXT文本操作
    Appium-处理系统弹窗
    Appium-服务关键字
    App Inspector-iOS真机功能详解
    Appium+Python3+iOS真机环境搭建
    Appium-超过60s的应用场景如何处理
    python-入门的第一个爬虫例子
    Mysql(五) JDBC
    Mysql(四)正则表达式
    Mysql(三)约束
  • 原文地址:https://www.cnblogs.com/mapoos/p/13193680.html
Copyright © 2011-2022 走看看