首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >二分查找-35.搜索插入位置-力扣(LeetCode)

二分查找-35.搜索插入位置-力扣(LeetCode)

作者头像
白天的黑夜
发布2025-10-22 17:06:50
发布2025-10-22 17:06:50
2210
举报

目录

一、题目解析

1.如果能在给定数组中找到目标值,则返回索引

2.如果目标值不存在,则返回将被插入的位置

3.必须使用时间复杂度为O(logN)的算法

二、算法解析

1.升序数组和时间复杂度O(logN),二分查找

2.二段性

细节问题

对于示例3的情况需要判断nums[nums.size()-1]是否大于target,小于则返回nums.size()

三、代码示例

看到最后,如果对您有所帮助,还请点赞、收藏和关注,我们下期再见!


一、题目解析

1.如果能在给定数组中找到目标值,则返回索引

2.如果目标值不存在,则返回将被插入的位置

3.必须使用时间复杂度为O(logN)的算法

二、算法解析

1.升序数组和时间复杂度O(logN),二分查找

2.二段性

细节问题

对于示例3的情况需要判断nums[nums.size()-1]是否大于target,小于则返回nums.size()

三、代码示例

代码语言:javascript
复制
class Solution {
public:
    int searchInsert(vector<int>& nums, int target)
    {
        int left = 0,right = nums.size()-1;
        while(left<right)
        {   int mid = (left+right)/2;
            if(nums[mid]<target) left = mid + 1;
            else right = mid;
        }
        return target>nums[nums.size()-1] ? right+1 : right;
    }
};

看到最后,如果对您有所帮助,还请点赞、收藏和关注,我们下期再见!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、题目解析
    • 1.如果能在给定数组中找到目标值,则返回索引
    • 2.如果目标值不存在,则返回将被插入的位置
    • 3.必须使用时间复杂度为O(logN)的算法
  • 二、算法解析
    • 1.升序数组和时间复杂度O(logN),二分查找
    • 2.二段性
    • 细节问题
      • 对于示例3的情况需要判断nums[nums.size()-1]是否大于target,小于则返回nums.size()
  • 三、代码示例
  • 看到最后,如果对您有所帮助,还请点赞、收藏和关注,我们下期再见!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档