본문 바로가기

Algorithm

이진탐색(binary search)

= int(input("입력하신 값의 위치를 출력하겠습니다. 입력해주세요: "))
= [12345678910]
 
def binary(n):
    global a
    minn = 0
    maxx = len(a)-1
    cnt = 0
    
    while True:      
        mid = int((minn + maxx) / 2)
        cnt += 1
        if a[mid] == n:
            break
        elif a[mid] > n:
            maxx = mid-1
        elif a[mid] < n:
            minn = mid+1
    print("인덱스: ", a.index(a[mid]), "연산횟수: ", cnt)
    
binary(N)