반응형
자기 자신을 리턴하는 재귀함수!
현업에서 쓸 일은 거의 없지만, 코딩 테스트에서 자주 등장한다.
파이썬의 재귀함수에는 한계치(limit)가 있으므로 주의해서 사용한다.
기본 형태
def recursive_func():
print('재귀함수 만세!!!!!!💛')
return recursive_func()
recursive_func()

>>> RecursionError : maximum recursion depth exceeded 어쩌구 발생
^_^... 따라하지 마시오...
기본 예제 - 팩토리얼 함수 만들기
(1) while 반복문 이용하기
def factorial_while(n):
i = 1
answer = 1
while i <= n:
answer *= i
i += 1
return answer
(2) 재귀함수 이용하기
def factorial(n):
if n == 1:
return 1
elif n == 2:
return 2
else:
return n * factorial(n-1)
반응형
'Code > function snippet' 카테고리의 다른 글
python | numpy 라이브러리를 이용하여 최대공약수, 최소공배수 구하기 (gcd, lcm) (0) | 2024.04.08 |
---|---|
python | 연속 공백 여러개 분리하기, split 함수 대신 정규식(re) 활용하기! (0) | 2024.04.08 |
python | 소수 판별 함수 작성하기 (prime number) (0) | 2024.04.01 |
python | 약수(factor) 리스트업 함수 작성하기 + 메모화 (memorization) (0) | 2024.04.01 |
python | 중첩리스트 평탄화 함수 작성하기 flatten function (+ 여러번 중첩되는 경우 : 재귀함수!!) (0) | 2024.04.01 |