線形検索:最初から終わりを見つけ、必要なものが見つかったらそれを返し
ます。バイナリ検索:配列の中央値を取得します。チェックするデータが中央値より大きい場合、添え字は+1です。それ以外の場合。下付き文字は-1です
#二分查找
def binary_search(sorked_array,val):
if not sorked_array:
return -1
beg = 0
end = len(sorked_array) -1
while beg <= end:
mid = int((end+beg) / 2)
if sorked_array[mid] == val:
return mid
elif sorked_array[mid] > val:
end = mid - 1
else:
beg = mid + 1
return -1