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

相关推荐
意疏33 分钟前
【数据结构篇】算法征途:穿越时间复杂度与空间复杂度的迷雾森林
数据结构
Phoebe鑫1 小时前
数据结构每日一题day7(顺序表)★★★★★
算法
Suc_zhan2 小时前
实验二 如何将随机森林算法应用于激酶抑制剂分类任务
python·算法·随机森林·机器学习
小学仔3 小时前
leetcode -编辑距离
java·算法·动态规划
AI是这个时代的魔法3 小时前
Using Dyck Path to solve a leetcode puzzle
python·算法·leetcode
愚戏师3 小时前
数据结构与算法分析:树与哈希表(一)
数据结构·算法·链表·深度优先·广度优先·宽度优先
float_六七3 小时前
C++中的搜索算法实现
java·c++·算法
freexyn3 小时前
Matlab自学笔记四十九:类型识别:判断数据的类型和类别
数据结构·笔记·matlab
电科_银尘4 小时前
【Matlab】-- 基于MATLAB的飞蛾扑火算法与反向传播算法的混凝土强度预测
开发语言·算法·matlab
wen__xvn4 小时前
Codeforces Round 1014 (Div. 2)2092A - Kamilka and the Sheep c++
开发语言·c++·算法