취업 리부트 코스 2주차(3)

김선은·2024년 3월 29일
0

취업 리부트코스

목록 보기
8/20

오늘 알고리즘 문제 풀이에서 자주 등장한 개념은 백트래킹 알고리즘이었다.
일반적으로 백트래킹은 모든 가능한 해를 찾는 완전탐색에서 사용되며 가지치기라는 개념과 함께 사용될 때 효율적이다.
(해가 될 수 없다고 판단되면 이전 단계로 돌아가 다른 해결책을 탐색하기)

주로 재귀적으로 구현되는 경우가 많아서 멘토님이 재귀 함수를 만드는 연습을 추천해주셨다.

def sum_from_one_to_n(n):
    # 기저 조건: n이 1 이하일 때, 합은 자기 자신이므로 n을 반환
    if n <= 1:
        return n
    # 재귀 호출: n이 1보다 크면 sum_from_one_to_n 함수를 n-1에 대해 호출하고 현재 n을 더함
    else:
        return n + sum_from_one_to_n(n - 1)

# 예시로 n이 5인 경우의 합을 출력
n = 5
print("1부터", n, "까지의 합:", sum_from_one_to_n(n))
profile
기록은 기억이 된다

0개의 댓글