코딩테스트/백준

[Python] Recursive(재귀함수)

jungmin.park 2023. 10. 23. 01:30

 

1. 팩토리얼 구하기

  • 재귀함수를 배울때 가장 대표적인 문제
def factorial(num:int):
    if num == 1:
        return num
    sum = num * factorial(num -1)
    return sum

factorial(4) 실행 시

  • 4* factorial(3) 호출
  • factorial(3) -> 3 * factorial(2)
  • factorial(2) -> 2 * factorial(1)
  • factorial(1) -> 1 반환
  • 2 * 1
  • 3 * (2 * 1) : 반환된 2 * 1
  • 4 * 3 * 2 * 1 : 반환된 3 * 2 * 1