LeetCode 35. 搜索插入位置(二分查找)
文章目录
- 1. 题目信息
- 2. 解题
- 2.1 暴力遍历
- 2.2 二分查找
1. 题目信息
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例 1:输入: [1,3,5,6], 5
输出: 2
示例 2:输入: [1,3,5,6], 2
输出: 1
示例 3:输入: [1,3,5,6], 7
输出: 4
示例 4:输入: [1,3,5,6], 0
输出: 0
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/search-insert-position
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
2.1 暴力遍历
class Solution {public:int searchInsert(vector<int>& nums, int target) {int i;for(i = 0; i < nums.size(); ++i){if(target <= nums[i]){return i;}}return i;}
};
2.2 二分查找
class Solution {public:int searchInsert(vector<int>& nums, int target) {if(target <= nums[0])return 0;if(target > nums[nums.size()-1])return nums.size();int i = 0, j = nums.size()-1, mid, ans = 1;while(i <= j){mid = i + (j-i)/2;if(nums[mid] == target)return mid;else if(nums[mid] > target)j = mid-1, ans = mid;//不知取哪边,这种写法比较好elsei = mid+1;}return ans;}
};
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 35. 搜索插入位置(二分查找)相关推荐
- Leetcode 35.搜索插入位置 二分
题目链接 思路: 是常规的二分法, 需要注意的是,当数字不存在的时候,需要返回插入该数进序列并保持有序的位置,即返回的是最后一个小于查找数target的位置.二分查找最后结束的位置,即退出循环时的左边 ...
- leetcode 35. 搜索插入位置(二分法搜索失败的情况)
35. 搜索插入位置 思路:二分查找 模板: 如果查找成功,返回target在nums中的下标 //二分查找模板 //nums[0..n-1]为有序数组,target为目标 int left=0; i ...
- leetcode 35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5 输 ...
- leetcode 35. 搜索插入位置 思考分析
目录 题目 暴力 二分迭代 二分递归 题目 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 ...
- LeetCode 35.搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5 输 ...
- LeetCode (二分小专题)33搜索旋转排序数组34在排序数组中查找元素的第一个和最后一个位置35搜索插入位置
前言 国庆前最后一次打卡,国庆后继续开启,公众号bigsai回复进群欢迎加入打卡,如有帮助记得点赞收藏. 近期打卡记录: LeetCode 32最长有效括号(困难) (本周) LeetCode 30串 ...
- LeetCode-二分查找-35. 搜索插入位置
35. 搜索插入位置 思路:二分查找 class Solution {public:int searchInsert(vector<int>& nums, int target) ...
- LeetCode Algorithm 35. 搜索插入位置
35. 搜索插入位置 Ideas 题目中给的提示已经很清楚了,要求时间复杂度是O(log n),这不是指着鼻子跟我说:给老子用二分查找嘛! Code Python def searchInsert(s ...
- 【LeetCode】35. 搜索插入位置---JavaScript解法
[LeetCode]35. 搜索插入位置-JavaScript解法 原题链接:https://leetcode-cn.com/problems/search-insert-position/ /*** ...
最新文章
- 26.2. Web UI
- 发个IOCP的C++例子
- 浅析网站友情链接交换潜在问题有哪些?
- java 安卓调试_【转】Android 调试技术
- 【web前端开发】介绍div+css的6个优点
- mysql哪个版本和x86兼容_[C++]C++连接MySQL,封装为class(兼容x86和x64)
- c语言和电脑猜拳,c语言编写和电脑猜拳的游戏
- mac下显示隐藏文件的方法
- 项目Alpha冲刺Day3
- 03 - 雷达的基本组成
- 一款性价比远超visio的画图小工具-Dia Diagram Editor(开源-跨平台)
- [国家集训队]矩阵乘法 整体二分
- 往十年不忘初心,新十年不负韶华丨万字长文带你完整回顾2020数据技术嘉年华
- WordPress安装时未选择语言导致变成英文无法修改成中文
- 计算机无线鼠标重启才能连上,无线鼠标电脑重启后无反应
- 关于Python启动程序的其他方法,这些你应该知道>_(Python编程 | 系统编程 | 并行系统工具 | 启动程序的其他方法)
- Cisco AnyConnect 报错 connection failed due to unsuccessful domain name resolution
- 冬瓜哥对时间和空间的理解方式—时空参悟(下)
- busybox 的insmod can't insert operation not permitted 错误解决
- win7计算机没有光驱图标不见了,win7系统光驱图标消失怎么办