min's devlog
재귀 호출(recursive call) 본문
재귀 호출(recursive call)
- 메소드 내부에서 해당 메소드가 또다시 호출되는 것
* 자기가 자신을 계속해서 호출하는 반복을 막기 위해 재귀 호출을 중단 명령문을 포함한다.
1 + N 까지의 합계 출력
public class Recursive {
public static void main(String[] args) {
Print(5); //출력 메소드 호출
}
//출력 메소드
public static void Print(int n)
{
// n이 0인 경우 return
if(n == 0)
return;
System.out.println("재귀함수");
Recursive(n-1); // 재귀함수 시작
}
}
n이 0이 될 때 메소드를 끝낸다.
함수를 호출할 때 마다 n에서 1씩 빼서 재귀함수를 종료하게 만든다.
피보나치 수열
public class FibonacciFunction {
public static void main(String[] args) {
int n = 10;
for(int i = 0; i < n; i++)
System.out.print(Fibonacci(i) + " ");
}
// 피보나치 수열의 결과를 구하는 메소드
public static int Fibonacci(int n)
{
if(n == 0)
return 0;
if(n == 1 || n == 2)
return 1;
else
return Fibonacci(n - 1) + Fibonacci(n - 2);
}
}\
재귀함수를 사용한 N = (N - 1) + (N - 2) 의 계산
'til > Java' 카테고리의 다른 글
문자열(String) (0) | 2022.03.22 |
---|---|
String 조작 기능 (0) | 2022.03.21 |
메소드 오버로딩 (0) | 2022.03.21 |
this와 this() (0) | 2022.03.21 |
생성자(Constructor) (0) | 2022.03.21 |
Comments