본문/내용
1. 책에서 설명한 순차탐색 알고리즘과 이진탐색 알고리즘(순환(recursion)을 이용한)을 프로그래밍 하세요.
return -1 값을 찾지 못한 경우mid = left + (right - left) // 2 중간 인덱스 계산if arr[mid] targetreturn mid 값을 찾은 경우 인덱스 반환elif arr[mid] ` targetreturn binary_search_recursive(arr, target, left, mid - 왼쪽 절반 탐색elsereturn binary_search_recursive(arr, target, mid + 1, right) 오른쪽 절반 탐색 사용 예arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]target = 5result = binary_search_recursive(arr, target, 0, len(arr) - if result != -1print(f`값 {target}은 인덱스 {result}에 위치한다. print(`값을 찾을 수 없다. `)``` 위 예제에서, `binary_search_recursive` 함수는 정렬된 배열 `arr`, 찾고자 하는 값 `target`, 그리고 탐색 범위를 나타내는 `left`와 `right` 인덱스를 인자로 받아서 작동한다. 함수 호출 시, 시작과 끝 인덱스를 각각 0과 `len(arr) - 1`로 설정하여 전체 배열을 탐색하게 된다. 이처럼 순차탐색과 이진탐색은 서로 다른 특성을 가지며, 각각의 상황에 따라 사용해야 할 알고리즘을 선택하는 것이 중요하다…