leetcode 35. 搜索插入位置 简单

server/2024/11/17 16:22:30/

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

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

提示:

  • 1 <= nums.length <= 10e4
  • -10e4 <= nums[i] <= 10e4
  • nums 为 无重复元素 的 升序 排列数组
  • -10e4 <= target <= 10e4

分析:题目要求使用O(log n)的算法,即二分查找。每次二分若位置等于target,则返回当前位置;若小于,则说明在右边;若大于,说明在左边。结束查找的条件为当前长度为1.注意最后放的位置应该是第一个大于target值的位置。

int searchInsert(int* nums, int numsSize, int target) {int l=0,r=numsSize;while(l<r){int mid=(l+r)>>1;if(nums[mid]==target)return mid;else if(nums[mid]>target){if(mid==l)return l;else r=mid;}else if(nums[mid]<target){if(mid==r-1)return r;else l=mid+1;}}return l;//最后的return无关紧要
}


http://www.ppmy.cn/server/142684.html

相关文章

Bottom-Up Attention(借助CNN)

系列博客目录 文章目录 系列博客目录1. Bottom-Up Attention的基本概念2. 如何借助CNN实现Bottom-Up Attention3. 与Top-Down Attention的对比4. Bottom-Up Attention的应用实例5. Bottom-Up Attention与CNN的结合6. Bottom-Up Attention的优点总结 “Bottom-Up Attention”&am…

docker安装minio、使用springboot集成minio同时创建并设置minio桶仅可读

docker-compose安装minio&#xff0c;并设置挂载目录 version: 3.8services:minio:image: minio/miniocontainer_name: minioenvironment:MINIO_ROOT_USER: rootMINIO_ROOT_PASSWORD: 123456789restarts: alwaysprivileged: trueports:- "9000:9000"- "9001:90…

微服务链路追踪skywalking安装

‌SkyWalking是一个开源的分布式追踪系统&#xff0c;主要用于监控和分析微服务架构下的应用性能。‌ 它提供了分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案&#xff0c;特别适用于微服务、云原生架构和基于容器的环境&#xff08;如Docker、K8s、Mesos&…

记录no.28

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h>; //一维数组&#xff0c;在地址中连续存放 int main() { int arr[] { 1,2,3,4,5,6,7,8,9,10 };//一个整型int占四个字节 int sz sizeof(arr) / sizeof(arr[0]); int i 0; /*for (i 0; i < …

【Linux】网络基础

目录 初识协议 协议分层 OSI七层模型 TCP/IP五层&#xff08;或四层&#xff09;模型 再识协议 为什么要有TCP/IP协议&#xff1f; 什么是TCP/IP协议&#xff1f; TCP/IP协议与操作系统的关系 究竟是什么协议 网络传输基本基本流程 局域网网络传输流程图 跨网络传输…

定时清理潜在客户列表中的无效邮箱可提高EDM电子邮件自动化营销邮件送达率

定时清理无效邮箱对于邮件营销来说&#xff0c;具有多重好处&#xff0c;这些好处直接关系到营销活动的效率、成本节约、品牌形象以及法律合规性。以下是几个关键方面&#xff1a; 提高邮件送达率&#xff1a; 无效邮箱&#xff08;如不存在、拼写错误或已废弃的邮箱地址&…

机器学习day3-KNN算法、模型调优与选择

五 sklearn机器学习概述 1.实例化预估器(估计器)对象(estimator)&#xff0c; 预估器对象很多,都是estimator的子类&#xff08;1&#xff09;用于分类的预估器sklearn.neighbors.KNeighborsClassifier k-近邻sklearn.naive_bayes.MultinomialNB 贝叶斯sklearn.linear_model.L…

吉林大学 超星慕课 高级语言程序设计 学习通部分题目极其答案

题目编号:Exp04-Basic06&#xff0c;GJBook3-06-04 题目名称:循环右移 题目描述:编写程序&#xff0c;不使用其它辅助数组&#xff0c;把一维整型数组中的各个素循环右移位。 输入: 第一行输入两个整数&#xff0c;n表示数组长度(0<n<100)&#xff0c;j表示循环右移的…