더북(TheBook)

정렬된 배열에서 이진 검색을 어떻게 수행하는지 보자. 원소 9개를 포함하는 정렬된 배열이 있다고 하자. 컴퓨터는 각 셀에 어떤 값이 있는지 바로 알 수 없으므로 다음과 같이 배열을 묘사하겠다.

▲ 그림 2-12

정렬된 배열에서 값 7을 찾는다고 하자. 이진 검색은 다음과 같이 동작한다.

1단계: 가운데 셀부터 검색을 시작한다. 배열의 길이를 2로 나누어 가운데 셀의 인덱스를 계산할 수 있으므로 쉽게 접근할 수 있다. 가운데 셀의 값을 확인한다.

▲ 그림 2-13

값이 9로 드러났으므로 7은 왼쪽 어딘가에 있다고 판단할 수 있다. 배열에 있는 셀의 절반, 즉 9보다 오른쪽에 있는 모든 셀(과 9 자신)을 제거했다.

▲ 그림 2-14

2단계: 9보다 왼쪽에 있는 셀들 중 가운데 값을 확인한다. 가운데 값이 두 개이므로 임의로 왼쪽 값을 선택한다.

▲ 그림 2-15

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.