백준 1920. 수 찾기 (파이썬 이분탐색)

ppm_Vely·2022년 6월 21일
0

코딩테스트

목록 보기
13/21

문제 요약하면..

이분탐색을 이용해 특정 수가 배열에 있는지 찾아내자!

시도 1.(정답)

※이분탐색 알고리즘 알고가기※

정렬되어 있다는 가정하에 사용 가능!

반씩 나누며 특정 수를 찾아가는 알고리즘으로

"정중앙 값"과 "찾고자 하는 값"의 계속되는 대소비교를 통해 위치를 찾아간다.

숫자 갯수가 짝수 / 홀수 일 때 중앙값의 위치는 다음과 같다.

찾고자 하는 값 > 정중앙 값

=> 탐색 범위는 정중앙보다 위쪽 (오른쪽)에 위치하므로

=> 탐색위치의 start 값 -> mid +1 로 바꿔준다

찾고자 하는 값 < 정중앙 값

=> 탐색 범위는 정중앙보다 아래 (왼쪽)에 위치하므로

=> 탐색위치의 end 값 -> mid-1 로 바꿔준다.

profile
오늘도 개발중인 ppm's Programming Log

0개의 댓글