题目链接:https://leetcode-cn.com/problems/search-insert-position/

题解汇总:https://zhanglong.blog.csdn.net/article/details/121071779


题目描述

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

请必须使用时间复杂度为 O(log n) 的算法。

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

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

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

示例 4:
输入: nums = [1,3,5,6], target = 0
输出: 0

示例 5:
输入: nums = [1], target = 0
输出: 0


经典二分, 如果找到则直接返回, 如果没找到,分为两种情况;

  • 若返回值小于target,则插入返回值位置的后方,位置为返回值位置 + 1
  • 若返回值大于target,则插入返回位置的前方,位置为返回值位置

class Solution {public:int searchInsert(vector<int>& nums, int target) {int l = 0, r = nums.size() - 1, m;while (l <= r) {m = ((l + r) >> 1);if (target == nums[m]) return m;    // 找到else if (target > nums[m]) l = m + 1;else r = m - 1;}if (nums[m] > target) return m;else return m + 1;}
};

【解题报告】Leecode 35. 搜索插入位置——Leecode刷题系列相关推荐

  1. LeetCode-二分查找-35. 搜索插入位置

    35. 搜索插入位置 思路:二分查找 class Solution {public:int searchInsert(vector<int>& nums, int target) ...

  2. LeetCode-数组-35. 搜索插入位置

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

  3. LeetCode (二分小专题)33搜索旋转排序数组34在排序数组中查找元素的第一个和最后一个位置35搜索插入位置

    前言 国庆前最后一次打卡,国庆后继续开启,公众号bigsai回复进群欢迎加入打卡,如有帮助记得点赞收藏. 近期打卡记录: LeetCode 32最长有效括号(困难) (本周) LeetCode 30串 ...

  4. LeetCode Algorithm 35. 搜索插入位置

    35. 搜索插入位置 Ideas 题目中给的提示已经很清楚了,要求时间复杂度是O(log n),这不是指着鼻子跟我说:给老子用二分查找嘛! Code Python def searchInsert(s ...

  5. leetcode 35. 搜索插入位置(二分法搜索失败的情况)

    35. 搜索插入位置 思路:二分查找 模板: 如果查找成功,返回target在nums中的下标 //二分查找模板 //nums[0..n-1]为有序数组,target为目标 int left=0; i ...

  6. 【LeetCode】35. 搜索插入位置---JavaScript解法

    [LeetCode]35. 搜索插入位置-JavaScript解法 原题链接:https://leetcode-cn.com/problems/search-insert-position/ /*** ...

  7. ARTS-23(35. 搜索插入位置,SELU激活函数,本周几个问题, 招商银行财报分析)

    Algorithm https://leetcode-cn.com/problems/search-insert-position/ 35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目 ...

  8. 力扣35. 搜索插入位置python实现

    35. 搜索插入位置 一.问题描述 二.算法思想   题目中的数组是排好序的,从头开始遍历,当发现列表中元素的值与target相等时返回该元素在列表中的位置i,否则继续查找,当发现列表中的元素比tar ...

  9. 【Shell牛客刷题系列】SHELL5 打印空行的行号:一起学习grep命令搭配正则表达式的使用

    该系列是基于牛客Shell题库,针对具体题目进行查漏补缺,学习相应的命令. 刷题链接:牛客题霸-Shell篇. 该系列文章都放到专栏下,专栏链接为:<专栏:Linux>.欢迎关注专栏~ 本 ...

最新文章

  1. 谷歌数字图书馆_如何在没有联系的情况下找到6位数字的工作-提示使我获得了Google和其他技术巨头的工作机会...
  2. JFrame 简单使用
  3. linux动态二进制翻译,仿真:解释和二进制翻译
  4. ECSHOP批量添加商品到购物车
  5. 自定义函数_python3基础07函数(自定义)
  6. scala字符串替换_如何在Scala中替换字符串中的正则表达式模式?
  7. 前端 页面无刷新方案一
  8. 云计算教程学习入门视频:云计算的模型都有哪些
  9. layUI table 内容超出宽度怎么换行显示,而不是显示省略号
  10. 3.中小型企业通用自动化运维架构 -- Ansible playbook
  11. 咏南IOCP REST中间件
  12. CF1040A Palindrome Dance
  13. 医生- 患者 - 图标
  14. 电梯控制系统设计(PLC及组态)
  15. 【机器学习】分类决策树基本介绍+代码实现
  16. 认识计算机软件的教学过程,《认识计算机》教学设计
  17. 密码学复习笔记2【分组密码/S-DES、DES】
  18. codeforces1567B
  19. 忽略证书,下载网络图片
  20. 计算机视觉中的数据流与模型训练代码总结!

热门文章

  1. chromium net android移植
  2. 高级数据结构与算法 | 哈希 :哈希冲突、负载因子、哈希函数、哈希表、哈希桶
  3. 实战:如何对磁盘和网络IO进行评估、监控、定位和优化?
  4. 视频传输面临的挑战和解决之道
  5. Mozilla裁员波及Daala Codec团队
  6. Netflix:如何通过机器学习提高流媒体质量?
  7. 剑指offer之61-66题解
  8. Web内核微信小程序框架实践
  9. MemSQL可以为时间序列应用做些什么
  10. tomcat+nginx+redis实现均衡负载、session共享(一)