Chapter 07 : 이진 탐색

숭글·2021년 2월 21일
0

: 리스트 안 특정 데이터를 찾음

순차 탐색
앞에서부터 차례로 데이터를 하나씩 확인

def sequential_search(target, array):
    for i in range(len(array)):
        if array[i] == target:
            return i + 1

input_data = input("문자열 리스트").split()
target = input("찾는 데이터")


print(sequential_search(target, input_data))

이진 탐색
찾으려는 데이터와 중간점에 있는 데이터를 반복적으로 비교
. 데이터가 정렬돼있을 때 사용

  • 참고할 소스코드가 없을 땐 이진 탐색 구현은 어려울 수도 있으니 가급적 외우길 권함

input()함수 대신 sys라이브러리의readline()함수 이용

파라메트릭 서치 Parametric search
: 최적화 문제를 결정 문제로 해결하는 기법
, 원하는 조건을 만족하는 가장 알맞은 값을 찾는 문제에 주로 사용

--> 실전문제 3번 처럼 탐색 범위가 10억 같은 큰 수면 가장 먼저 이진 탐색을 떠올려야함

profile
Hi!😁 I'm Soongle. Welcome to my Velog!!!

0개의 댓글