// 팩토리얼
int factorial(int n)
{
int result = 1;
for (int i = 1; i <= n; i++)
{
result *= i;
}
return result;
}
// 피보나치
// Dynamic Programming으로 할 수 있다
// Overlapping Sub Problems
// 팩토리얼
int factorial(int n)
{
return n == 1 || n == 0 ? 1 : n * factorial(n - 1);
}
// 피보나치
int fibonacci(int n)
{
if (n == 0)
return 0;
else if (n == 1)
return 1;
else
return fibonacci(n - 1) + fibonacci(n - 2);
}
재귀 함수는 스택 오버플로우를 초래할 수 있다