[python] 함수에서 재귀호출 사용하기

anjiyoo·2024년 3월 6일

Python

목록 보기
30/41
post-thumbnail

1.재귀호출

  • 재귀호출 : 함수 안에서 자기 자신을 호출하는 방식
  • 알고리즘 구현할 때 유용

1-1.재귀호출 사용하기

  • hello 함수 안에서 다시 hello 함수 호출
  • 파이썬 최대 재귀 깊이가 1,000으로 정해져 있음
def hello():
	print('Hello, world!')
    hello()
    
hello()

1-2.재귀호출에 종료 조건 만들기

def hello(count):
	if count == 0 :  # 종료 조건을 만듦. count가 0이면 다시 hello 함수를 호출하지 않고 끝냄
    	return
    
    print('Hello, world!', count)
    
    count -= 1  # count를 1 감소
    hello(count)  # 다시 hello에 넣음
    
hello(5)  # hello 함수 호출

2.재귀호출로 팩토리얼 구하기

  • 팩토리얼 : 1부터 n까지 양의 정수를 차례대로 곱한 값이며 ! 기호로 표기
  • 5! : 5 4 3 2 1
def factorial(n):
	if n == 1:  # n이 1일 때
    	return 1  # 1을 반환하고 재귀호출을 끝냄
    return n * factorial(n-1)  # n과 factorial 함수에 n-1을 넣어서 반환되는 값을 곱함
    
print(factorial(5))
profile
기록으로 흔적을 남기는 것을 좋아합니다

0개의 댓글