题目描述:给定一个 n
个元素有序的(升序)整型数组 nums
和一个目标值 target
,写一个函数搜索 nums
中的 target
,如果目标值存在返回下标,否则返回 -1
。
学习博主代码随想录的视频,自己动手写了一下发现自己在写代码的时候有很多小细节的东西没有注意到,后面还需要继续加强练习。
而且python语言和C语言的语言规范不太一样,太容易搞混了 还是要仔细区分一下
学习视频之后的答案:
class Solution:
def search(self, nums: List[int], target: int) -> int:
left =0
right = len(nums)-1
while left <= right:
mid = (left+right)//2
if nums[mid]>target:
right = mid-1
elif nums[mid]<target:
left = mid+1
else:
return mid
return -1