_재귀함수 2

5강: 재귀 알고리즘 응용

강의 재귀 알고리즘을 응용할 수 있는 실제 예시를 풀어보았습니다. 1) 조합 : 같은 방법으로 순열이나 팩토리얼 계산도 가능할 것이라고 생각합니다. 2) 하노이의 탑 3) 피보나치 순열 : 재귀적 이진탐색으로 효율성을 높일 수 있습니다. 그러나 f(n)을 구하기 위해 f(n-10)을 여러번 계산해야 하는 부분에서 더욱 좋은 코드를 작성할 수 있을 것이라고 예상합니다. 5강 실습: 재귀적 이진 탐색 구현하기 ⭐ 이진 탐색에 재귀를 추가한 문제! def solution(L, x, l, u): if l > u: return -1 mid = (l + u) // 2 if x == L[mid]: return mid elif x < L[mid]: return solution(L, x, l, mid-1) else: r..

4강: 재귀 알고리즘 기초

강의 "재귀함수"는 자신을 다시 호출하여 작업을 수행하는 알고리즘입니다. 예시로는 이진 트리와 자연수의 합 구하기가 있습니다. 재귀함수는 종결 조건을 작성하는 것이 매우 중요합니다. 모든 재귀함수는 반복문으로 작성이 가능합니다. 하지만 효율성이 항상 좋다고 할 수는 없습니다. 4강 실습: 피보나치 순열 구현하기 ⭐ 직관적 풀이 : 반복문 이용하는 방법! def solution(x): f = [0] * (x+1) print(f, x) if x == 0: return 0 f[1] = 1 for i in range(2, x+1): f[i] = f[i-2] + f[i-1] return f[-1] ⭐ 힌트 풀이 : 재귀함수 이용하는 방법! def fibo(n): if n == 0 or n == 1: return ..