leetcode hot 100 二叉搜索

35. 搜索插入位置

已解答

简单

相关标签

相关企业

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

请必须使用时间复杂度为 O(log n) 的算法。

class Solution(object):

def searchInsert(self, nums, target):

"""

:type nums: List[int]

:type target: int

:rtype: int

"""

l = 0

r =len(nums)-1

while l<=r :

mid = (l+r)/2

if nums[mid] < target:

l = mid+1

elif nums[mid] > target:

r = mid -1

else:

return mid

if nums[mid]>target:

return mid

else:

return mid+1

记住这里的方法,lr复制,然后条件为l<=r ,然后l=mid+1 r=mid-1最终是可以通过的

相关推荐
绒绒毛毛雨22 分钟前
广告推荐算法入门 day1 --项目选型
算法·推荐算法
越城39 分钟前
数据结构中的栈与队列:原理、实现与应用
c语言·数据结构·算法
似水এ᭄往昔41 分钟前
【数据结构】——栈和队列OJ
c语言·数据结构·c++
wang__123001 小时前
力扣2094题解
算法·leetcode·职场和发展
GUIQU.2 小时前
【每日一题 | 2025年5.5 ~ 5.11】搜索相关题
算法·每日一题·坚持
双叶8362 小时前
(C语言)超市管理系统(测试版)(指针)(数据结构)(二进制文件读写)
c语言·开发语言·数据结构·c++
不知名小菜鸡.2 小时前
记录算法笔记(2025.5.13)二叉树的最大深度
笔记·算法
小雅痞2 小时前
[Java][Leetcode middle] 55. 跳跃游戏
java·leetcode
真的想上岸啊2 小时前
c语言第一个小游戏:贪吃蛇小游戏05
c语言·算法·链表
元亓亓亓2 小时前
LeetCode热题100--206.反转链表--简单
算法·leetcode·链表