Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ERD
- 세션(Session)
- Til
- NoSQL
- 코딩테스트
- 아티클 스터디
- docker
- nginx
- web
- 자료구조
- SQL
- viewsets
- 파이썬
- redis
- CS
- JWT
- django
- 도커
- 쿠키(cookie)
- github
- 연습
- 개발공부
- Doker
- Wil
- 티스토리챌린지
- Python
- git
- 오블완
- flask
- 장고
Archives
- Today
- Total
SteadyDrills
[TIL] 재귀함수 & lambda함수 본문
240718
재귀함수
자기 자신을 호출하는 함수. 문제를 더 작은 하위 문제로 나누어 해결하는 방법
예시로는 팩토리얼, 피보나치수열 등이 있다.
# N번째 피보나치 수를 찾는 코드
n =int( input("숫자를 적어주세요:"))
def fibo(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibo(n - 1) + fibo(n - 2)
print(fibo(n))
장점은 복잡한 문제를 분할해서 단순한 코드로 해결할 수 있다는 점이다.
단점은 호출될 때마다 메모리에 스택이 쌓이며, 조건을 잘못 설정할 경우 종료되지 않을 수 있다.
lambda 함수(익명함수)
'def'키워드를 통해 이름 짓는 일반 함수와 달리, 보통 한 줄로 정의되는 함수이다.
한 번 호출한 후에는 사용할 수 없으므로 반복사용하지 않을 경우에만 사용된다.
# 기본 구조
lambda 인자1, 인자2, ... : 표현식
sum = lambda x,y:x+y
print(sum(2,3)) # 5
'PYTHON' 카테고리의 다른 글
[TIL]객체의 비교: 동일성(is)과 동등성(==) (0) | 2024.07.22 |
---|---|
[TIL]파이썬 - 얕은 복사(Shallow Copy)와 깊은 복사(Deep Copy) (0) | 2024.07.19 |
[TIL] 파이썬 LEGB 규칙 (0) | 2024.07.17 |
[TIL] 코딩 테스트 연습- 없는 숫자 더하기 (0) | 2024.07.16 |
[TIL] 코딩테스트- 서울에서 김서방 찾기, index 함수 (0) | 2024.07.12 |