题解 | #二分查找-II#
二分查找-II
http://www.nowcoder.com/practice/4f470d1d3b734f8aaf2afb014185b395
python 处理二分法,每次得到数值后先不要return,将right-1继续跑完,这样如果有比它小的数会自动覆盖到原来的结果上。
class Solution:
def search(self , nums , target ):
left,right,tmp=0,len(nums)-1,None
while left<=right:
mid=int(left+(right-left)/2)
if nums[mid]==target:
tmp=mid
right=right-1
elif nums[mid]<target: left=mid+1
elif nums[mid]>target: right=mid-1
return tmp if tmp is not None else -1
顺丰集团工作强度 382人发布
查看9道真题和解析
