# coding=utf-8
class Solution:
def binarySearch(self,nums,target):
return self.search(nums,0,len(nums)-1,target)
def search(self,nums,start,end,target):
if start>end:
return -1
mid=(start+end)//2
if nums[mid]>target:
return self.search(nums,start,mid,target)
if nums[mid]==target:
return mid
if nums[mid]<target:
return self.search(nums,mid,end,target)
class Solutions:
def binarySearch2(self,nums,target):
left,right=0,len(nums)-1
while left<right:
mid=(left+right)//2
if nums[mid]==target:
return mid
elif nums[mid]<target:
left=mid+1
else:
right=mid-1
return -1
if __name__=='__main__':
my_solution=Solution()
sol=Solutions()
nums=[1,2,3,4,5,6]
target=3
res=my_solution.binarySearch(nums,target)
result=sol.binarySearch2(nums,target)
print(result)
print(res)
2133

被折叠的 条评论
为什么被折叠?



