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

思路

对于不存在的情况, 我们只需要在数组里面找到最小的一个值大于 value 的 index , 这个 index 就是我们可以插入的位置。 譬如 [1, 3, 5, 6] , 查找 2 , 我们知道 3 是最小的一个大于 2 的数值, 而 3 的 index 为 1 , 所以我们需要在 1 这个位置插入 2 。 如果数组里面没有值大于 value , 则插入到数组末尾。

class Solution:def searchInsert(self, nums, target):""":type nums: List[int]:type target: int:rtype: int"""low = 0high = len(nums) - 1while low <= high:mid = low + (high - low) // 2if nums[mid] == target:return midelif nums[mid] < target:low = mid + 1else:high = mid - 1return low

GitHub地址:https://github.com/protea-ban/LeetCode

转载于:https://www.cnblogs.com/banshaohuan/p/9771007.html

LeetCode35.搜索插入位置相关推荐

  1. 3、leetcode35 搜索插入位置**

    leetcode 35 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) ...

  2. 二分法——leetcode35. 搜索插入位置

    二分法的第一种写法 在左闭右闭的区间寻找target: 不变的量是:[left,right]; #include<bits/stdc++.h> using namespace std; i ...

  3. LeetCode--35. 搜索插入位置(遍历,二分法)

    搜索插入位置(C) 1. 题目描述 2. 题目分析 3. C语言实现 3.1 遍历法 3.2 二分法 1. 题目描述 难度:简单 2. 题目分析 这道题目比较简单,比较容易想到的就是遍历法,其实更快的 ...

  4. #力扣 LeetCode35. 搜索插入位置 #在所有 Java 提交中击败了 100.00% 的用户 @FDDLC

    题目描述: 35. 搜索插入位置 - 力扣(LeetCode) (leetcode-cn.com) Java代码: class Solution { //已有序:在数组中找到目标值,并返回其索引:如果 ...

  5. LeetCode-35 搜索插入位置

    题目描述: 思路想法: 无疑是利用二分查找了,但是,当一个不存在数组中的元素,应该如何确定它在数组中的位置呢? 二分法在跳出循环时,说明这个元素没有在数组当中,但是,在跳出来之前,left和right ...

  6. LeetCode35.搜索插入位置 JavaScript

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

  7. 数组|leetcode35.搜索插入位置

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

  8. leetcode35. 搜索插入位置(二分搜索)

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

  9. LeetCode35. 搜索插入位置(二分查找)

    题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 思路 详见链接 代码 class So ...

最新文章

  1. 一套就够了!室内+室外激光SLAM关键算法讲解与工程实现(源码和数据开源)...
  2. Unity应用架构设计(7)——IoC工厂理念先行
  3. 框架:mybatis的缓存机制
  4. Spring Ioc 源码分析(一)--Spring Ioc容器的加载
  5. html tab选项卡 控件,tab选项卡插件
  6. mybatis 忽略实体字段_27道mybatis面试真题,你能答对几道?
  7. 如何在一个站点里使用两个Web.sitemap 或是多个Web.sitemap?
  8. 高考带给了我们什么..........
  9. Qt文档阅读笔记-void QObject::deleteLater()解析
  10. kubernetes与web集群
  11. python 枚举类型_Python枚举类
  12. 发现身边90%的朋友都是负债累累,是什么情况?
  13. python爬图片_Python爬虫:彼岸图网图片爬取-Go语言中文社区
  14. CSS背景图像的简单响应
  15. 如何搭建maven中,分布式工程
  16. 命令行下对apk签名
  17. 2011年Esri用户大会技术亮点总结之一:概览
  18. excel 删除大量空白行
  19. 各国程序员薪资水平,看完我想静静。。。
  20. Excel合并两列中的文本内容

热门文章

  1. maven学习笔记之IDEA+Maven+Jetty运行一个简单的web项目
  2. 比特币详解3.0 ——区块链的救赎
  3. 区块链世界中的IOTA:它是什么样的存在?
  4. 【问链财经-区块链基础知识系列】 第二十七课 区块链与分布式账本的异同
  5. python字典中append_零基础入手!Python中字典与集合的使用指南
  6. python的序列化是什么意思_python什么是反序列化?
  7. wincc报表日报表实例_工作系统二次开发二Python加工原膜切割日报表数据实例
  8. 创建一个storageevent事件_事件循环:微任务和宏任务
  9. CODEVS-1074-食物链-并查集
  10. Visual Tracking:运行ECO模型的GPU版本