代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可

如果目标值存在返回下标,否则返回 -1

@param nums int整型一维数组

@param target int整型

@return int整型

class Solution:
def search(self , nums , target ):
# write code here
left = 0
right = len(nums) - 1
while left <= right:
mid = (left+right) // 2
if nums[mid] < target:
left = mid +1
elif nums[mid] > target:
right = mid -1
else:
while mid != 0 and nums[mid] == nums[mid-1]:
mid -=1
return mid
else:
return -1