import math
def BinarySearch(A , val , low , high):
if high < low :
return -1 #not found
mid = low + (high - low) /2
if A[mid] > val:
return BinarySearch(A,val , low , high)
if A[mid] < val :
return BinarySearch(A,val,low,high)
else:
return mid #found
A = [ 12 , 23 , 2 , 33 , 123 , 4 , 5 , 2 , 54 , 555 , 21 ]
BinarySearch(A , 0 , 0, 10)
bisect 모듈을 사용하지 않고 이진 검색을 시도했습니다. 그러나 이와 같은 오류가 발생합니다.파이썬에서 이진 검색을하는 동안 오류가 발생했습니다. 코드에 어떤 문제가 있습니까?
File "doubtrob.py", line 8, in BinarySearch
return BinarySearch(A,val , low , high)
RuntimeError: maximum recursion depth exceeded