Der Code für die Dichotomie ist unten.
def binary_search(src, target_value):
    result = False
    lower_index = 0
    higher_index = len(src)-1
    while True:
        dst = src[lower_index:higher_index+1]
        medium_index = (lower_index + higher_index) // 2
        if src[medium_index] == target_value:
            result = True
            break
        if (higher_index - lower_index) == 1:
            break
        if target_value >= dst[medium_index]:
            lower_index = medium_index
        else:
            higher_index = medium_index
    return result
def main():
    src = [1, 2, 3, 4, 5, 6]  #Bereits sortiert
    target_value = 4
    if binary_search(src, target_value):
        print('Found!')
    else:
        print('Not Found')
if __name__ == '__main__':
    main()
Das Ausführungsergebnis ist wie folgt.
Found!
Vielen Dank für das Lesen bis zum Ende. Lass uns nochmal treffen.
Recommended Posts