给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
请必须使用时间复杂度为
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 <= 104-104 <= nums[i] <= 104nums为 无重复元素 的 升序排列数组-104 <= target <= 104
cppclass Solution { public: int searchInsert(vector<int>& nums, int target) { int l=0,r=nums.size()-1; while(l<r) { int mid=(l+r)/2; if(nums[mid]<target) { l=mid+1; }else{ r=mid; } } if(nums[r]<target) return nums.size(); return l; } };
LeetCode 35. 搜索插入位置
Liangwei Lin2026-05-12 11:38
相关推荐
luj_176816 小时前
星火科技助力边远地区防病攻坚木木子2218 小时前
# 鸿蒙 ArkTS 实战:秒表 Stopwatch(示例 5)geats人山人海19 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储漂流瓶jz19 小时前
UVA-12627 奇怪的气球膨胀 题解答案代码 算法竞赛入门经典第二版jarvisuni20 小时前
DeepSeekFlash前端依旧拉垮,而且变慢了很多!kobesdu20 小时前
流形上的优化:SO(3)与SE(3)的广义加减法在FAST-LIO中如何简化状态估计白狐_79820 小时前
408 数据结构算法题 01:线性表暴力求解保分指南乐观勇敢坚强的老彭20 小时前
C++信奥:开关门、开关灯问题冻柠檬飞冰走茶20 小时前
PTA基础编程题目集 7-31 字符串循环左移(C语言实现)Hi李耶21 小时前
【LeetCode】4-寻找两个正序数组的中位数