[알고리즘] 이진 탐색

허디·2021년 1월 3일
0

알고리즘

목록 보기
7/7

오늘은 이진 탐색 알고리즘을 공부했다.

import random

def binary_search(data, search):
    if len(data) == 1 and search == data[0]:
        return True
    elif len(data) == 1 and search != data[0]:
        return False
    elif len(data) == 0:
        return False

    index = len(data)//2
    find = data[index]
    if search == find:
        return True
    else: 
        if search < find:
            return binary_search(data[:index], search)
        elif search > find:
            return binary_search(data[index+1:],search)
    
data = random.sample(range(100), 5)
search = random.sample(range(100), 1)
print(binary_search(sorted(data), search[0]))
profile
인프라 + 개발

0개의 댓글