재귀함수
- 재귀함수(Recursion)는 정의 단계에서 자신을 재참조하는 함수
- 전달되는 상태인 매개변수가 달라질 뿐 똑같은 일을 하는 함수
- 큰 문제를 작은 부분문제로 나눠서 풀 때 사용합니다.
재귀함수 사용시 주의사항
- 반드시 기저사례를 써야 한다. (종료조건) if(n == 1 || n == 0) return 1;
- 사이클이 있다면 쓰면 안된다. ex) f(a)가 f(b)를 호출한 뒤 f(b)가 다시 f(a)를 호출하는 것
- 반복문으로 될 거같으면 반복문으로. (함수호출에 대한 코스트가 든다.)
팩토리얼과 피보나치에서의 활용
'언어 기초 > C언어' 카테고리의 다른 글
[큰돌 C++ 알고리즘 코딩테스트 | 강의 0주차] split()함수 (0) | 2024.02.19 |
---|---|
[요리조리 맛있는 C언어| PART04 연산자] 조건연산자?를 사용하여 최대값, 최소값 구하기 (0) | 2024.02.15 |
[큰돌 C++ 알고리즘 코딩테스트 | 강의 0주차] 조합 (1) | 2024.02.09 |
[큰돌 C++ 알고리즘 코딩테스트 | 강의 0주차]순열의 개념과 next_permutation (1) | 2024.02.08 |
[큰돌 C++ 알고리즘 코딩테스트 | 알고리즘 교안] 공부환경세팅 및 시작 (0) | 2024.02.07 |