IT/Java
[JAVA] 재귀함수로 피보나치 만들기
eternitys
2020. 12. 8. 14:35
public static int fibonacci(int number) {
if (number == 1) {
return 1;
} else if (number == 2) {
return 1;
} else {
return fibonacci(number - 1) + fibonacci(number - 2);
}
}
public static void main(String[] args) {
System.out.println("피보나치 수열의 10번째 원소는" + fibonacci(10) + "입니다.");
}
결과는
피보나치수열의 10번째 원소는 55입니다.
반복 함수보다 코드는 짧아졌지만 같은 기능을 합니다.
재귀 함수의 단점
재귀적으로 하면 오류가 생길 수 있습니다.
반복되는 게 많아지면 특정 연산이 반복된다. 숫자가 커지면 커질수록 많이 반복되며 비효율적입니다.
때에 따라 간결한 코드를 제공하지만 더 많은 시간을 소비할 수가 있습니다.