jemin0619 2024. 1. 20. 14:16

정렬된 배열에서만 사용 가능

재귀함수를 사용해 선형 탐색보다 효율적

 

https://gwlabs.tistory.com/31

int binarySearch(int startIdx, int endIdx, int target) {
    if (startIdx > endIdx) return -1;

    int middle = (startIdx + endIdx) / 2;
    if (target < container[middle]) {
        return binarySearch(startIdx, middle - 1, target);
    }
    else if (target > container[middle]) {
        return binarySearch(middle + 1, endIdx, target);
    }
    else {
        return middle + 1;
    }
}