当前位置: 首页 > article >正文

搜索插入位置

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

请必须使用时间复杂度为 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

有序数列,二分查找

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

    }
};


http://www.kler.cn/news/321624.html

相关文章:

  • R包compareGroups详细用法
  • MySQL_插入、更新和删除数据
  • Android中大量使用建造者模式(Builder Pattern)的原因可以归结为以下几点:
  • VMware虚拟机Centos操作系统——配置docker,运行本地打包的镜像,进入conda环境(vmware,docker新手小白)
  • MySQL数据查询(基础)
  • 新React v19特性
  • 面试速通宝典——4
  • Java中的注解处理器:自定义注解与APT工具的应用场景
  • 基于SSM+小程序的医院核酸检测服务管理系统(医院2)(源码+sql脚本+视频导入教程+文档)
  • LabVIEW提高开发效率技巧----利用第三方库和工具
  • Spring Boot与Spring Integration:集成模式的现代化实现
  • C++冷门知识点1
  • 基于SpringBoot+Vue+MySQL的电影院购票管理系统
  • word2vector训练数据集整理(代码实现)
  • 设计模式、系统设计 record part01
  • 生信初学者教程(十一):数据校正
  • 【C语言】手把手带你拿捏指针(完)(指针笔试、面试题解析)
  • 算法学习021 c++有多少张桌子 并查集算法学习 中小学算法思维学习 比赛算法题解 信奥算法解析
  • pandas习题 042:将列标签中的日期由近到远排列
  • map的使用
  • FFmpeg源码:avio_skip函数分析
  • 云计算Openstack Nova
  • elasticSearch常见命令及历史数据迁移
  • openlayers中一些问题的解决方案
  • JVM 类加载机制2
  • R语言 基础笔记 2
  • 【数据结构】算法的时间复杂度
  • Python OpenCV精讲系列 - 滤波器深入理解(十四)
  • 手机换新,怎么把旧iPhone手机数据传输至新iPhone16手机
  • Linux 进程控制