[자료구조] 이원 탐색, 순환 이원 탐색
·
전공/자료구조
이원 탐색 이미 정렬된 배열 a[0] ... a[n-1]에서 x=a[j]인 j를 반환 - left, right: 탐색하고자 하는 리스트의 왼쪽, 오른쪽 끝 - 초기값 left = 0, right = n-1 - 리스트의 중간 위치 middle = (left/right)/2 - a[middle]과 x 비교 1) x right = middle-1 2) x = a[middle] -> middle 반환 3) x > a[middle] -> left = middle+1 int BinarySearch(int *a, const int x, const int n) { // 정렬된 배열 a[left], ..., a[right]에서 x 탐색 int left = 0, right = n - 1; whi..