상세 컨텐츠

본문 제목

Java 5.재귀로 피보나치 수열 출력 (코딩테스트, 면접문제)

학습/Java 코딩테스트 예제

by husks 2023. 2. 15. 11:55

본문

반응형

다음은 재귀를 사용하여 피보나치 수열을 인쇄하는 Java 프로그램입니다.

public class FibonacciRecursion {
    public static void main(String[] args) {
        int n = 10; // change this to print more or fewer numbers in the sequence
        for (int i = 0; i < n; i++) {
            System.out.print(fibonacci(i) + " ");
        }
    }

    public static int fibonacci(int n) {
        if (n == 0) {
            return 0;
        } else if (n == 1) {
            return 1;
        } else {
            return fibonacci(n - 1) + fibonacci(n - 2);
        }
    }
}

이 프로그램은 재귀를 사용하여 피보나치 수열의 n번째 숫자를 계산하는 피보나치 방법을 정의합니다. 

 

기본 사례는 n이 0 또는 1인 경우이며 여기서 메서드는 단순히 각각 0 또는 1을 반환합니다. 

 

n의 다른 값에 대해 메서드는 n - 1 및 n - 2를 인수로 사용하여 자신을 재귀적으로 호출하고 두 결과의 합계를 반환합니다. 

 

main 메서드에서 우리는 0에서 n-1까지 각 i에 대해 fibonacci(i)를 호출하여 시퀀스의 처음 n개 숫자를 인쇄할 수 있습니다. 

 

재귀는 큰 n 값에 대해 비효율적일 수 있으므로 큰 n 값에 대해 루프 또는 반복 접근 방식을 사용하는 것이 더 나을 수 있습니다.

반응형

관련글 더보기

댓글 영역