キン〇マハムスター佐藤  2021/03/21更新

Python再帰ありのバイナリーサーチ


Python再帰ありのバイナリーサーチです。


def binary_search2(data, value):
    if len(data) == 0:
        print(data)
        return None
    else:
        pos_mid = len(data) // 2
        if value == data[pos_mid]:
            return pos_mid
        elif value < data[pos_mid]:
            return binary_search2(data[:pos_mid],value)
        else:
            return binary_search2(data[pos_mid+1:],value)
    
res = binary_search2(data,14)
if res != None:
    print(res)
else:
    print("見つかりません")


元ITエンジニアなんですが現役のときはバイナリーサーチは使いませんでしたね。いつも線形サーチ

タイトルとURLをコピーしました