python 搜索插入位置
| 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 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
示例 4:输入: nums = [1,3,5,6], target = 0
输出: 0
示例 5:输入: nums = [1], target = 0
输出: 0提示:1 <= nums.length <= 104
-104 <= nums[i] <= 104
nums 为无重复元素的升序排列数组
-104 <= target <= 104
题解
class Solution:def searchInsert(self, nums: List[int], target: int) -> int:length = len(nums)first = 0last = length - 1while last >= first:mid = first + (last - first) // 2if nums[mid] == target:return midelif nums[mid] > target:last = mid - 1else:first = mid + 1# 特殊情况处理return first if first < length else length
python 搜索插入位置相关推荐
- 力扣35. 搜索插入位置python实现
35. 搜索插入位置 一.问题描述 二.算法思想 题目中的数组是排好序的,从头开始遍历,当发现列表中元素的值与target相等时返回该元素在列表中的位置i,否则继续查找,当发现列表中的元素比tar ...
- LeetCode Algorithm 35. 搜索插入位置
35. 搜索插入位置 Ideas 题目中给的提示已经很清楚了,要求时间复杂度是O(log n),这不是指着鼻子跟我说:给老子用二分查找嘛! Code Python def searchInsert(s ...
- LeetCode 题 - 35. 搜索插入位置
搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5, ...
- 35搜索插入位置之Leecode—《数组篇》(二分法)
搜索插入位置 题目链接:https://leetcode-cn.com/problems/search-insert-position/ 题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回 ...
- 【每日一算法】搜索插入位置
微信改版,加星标不迷路! 每日一算法-搜索插入位置 作者:阿广 阅读目录 ? 题目 ? 解析 ? 完整代码 1 题目 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于 ...
- LeetCode-二分查找-35. 搜索插入位置
35. 搜索插入位置 思路:二分查找 class Solution {public:int searchInsert(vector<int>& nums, int target) ...
- LeetCode-数组-35. 搜索插入位置
描述 35. 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) 的算法. ...
- LeetCode (二分小专题)33搜索旋转排序数组34在排序数组中查找元素的第一个和最后一个位置35搜索插入位置
前言 国庆前最后一次打卡,国庆后继续开启,公众号bigsai回复进群欢迎加入打卡,如有帮助记得点赞收藏. 近期打卡记录: LeetCode 32最长有效括号(困难) (本周) LeetCode 30串 ...
- 3、leetcode35 搜索插入位置**
leetcode 35 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 请必须使用时间复杂度为 O(log n) ...
最新文章
- 关于python中的dict和defaultdict
- windows上搭建python+gvim开发环境
- Web开发常规调试方法与常见问题分析
- 关于壳的构架的一些感悟
- Linux笔记16.磁盘管理
- IDEA项目搭建七——使用Feign简化消费者端操作
- 最小生成树实验报告c语言,最小生成树(C语言, prim算法)
- Spring批处理CSV处理
- 服务器可以装两个系统吗,云服务器可以装多个系统吗
- 中科院发布规范学术论著署名问题负面行为清单
- mySQL用alter使列为空_我可以配置MySQL,以便新添加的列默认允许空值吗?
- 计算图层面积(针对于面要素)ArcObject c++
- 沙盒技术——selinux控制
- 实用小技能 | 用 Word 和 Excel 自制一个题库自判断答题系统!
- 设计模式之软件设计原则
- 广州坐标系转换大地2000_就是这样操作!从地方坐标系到2000国家大地坐标系的转换...
- 如何让双十一数据大屏讲出故事?设计有口诀
- 9.4 多元复合函数求导
- Win系统 - Windows10 该内存不能为 read
- 数论基础,从入门到入门
热门文章
- 34. Leetcode 234. 回文链表 (链表-双指针)
- 交通预测论文笔记《Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting》
- Spring + JDBC + Struts联合开发(实现单表的CRUD)
- python循环输入字典_python - 使用'for'循环迭代字典
- Python入门100题 | 第048题
- pandas中的括号索引
- Android安卓开发-'Theme.AppCompat.Light'无法找到的解决方案
- 特征训练、预测一致性管理工具:开源项目Feast
- Linux服务器性能评估与优化--转
- 供应链金融3.0化解新车流通金融难题