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最终是可以通过的

相关推荐
编程大师哥16 分钟前
C++类和对象
开发语言·c++·算法
今天又在写代码43 分钟前
数据结构v2
数据结构
加农炮手Jinx1 小时前
LeetCode 146. LRU Cache 题解
算法·leetcode·力扣
Rabitebla1 小时前
C++ 和 C 语言实现 Stack 对比
c语言·数据结构·c++·算法·排序算法
加农炮手Jinx1 小时前
LeetCode 128. Longest Consecutive Sequence 题解
算法·leetcode·力扣
旖-旎1 小时前
递归(汉诺塔问题)(1)
c++·学习·算法·leetcode·深度优先·递归
深邃-1 小时前
【数据结构与算法】-顺序表链表经典算法
java·c语言·数据结构·c++·算法·链表·html5
努力学习的小廉1 小时前
我爱学算法之—— 前缀和(上)
c++·算法
JAVA学习通1 小时前
励志从零打造LeetCode平台之C端竞赛列表
java·vscode·leetcode·docker·状态模式
AC17801 小时前
深入浅出 PID 算法:原理、实现与应用实战
人工智能·算法·机器学习