歡迎回來 [^first blood].python
要求A是升序數組數組
只能查 數據存不存在,不能返回下標markdown
def binary_find(A, m): if len(A) == 0: return -1 i = int(len(A)/2) if A[i] == m: return i if A[i] > m and i - 1 > 0 return binary_find(A[0:i], m) if A[i] < m and len(A)- (i+1) > 0 return binary_find(A[i+1 : ], m) return -1
可返回下標code
def binary_find(A, m): low = 0 high = len(A) - 1 while low <= high: i = int( (low + high) / 2) if A[i] == m: return i if A[i] > m: high = i - 1 else: low = i + 1 return None
[^first blood]: 俺的第一次markdown語法遞歸