Java/Java Concept

[Java] 재귀적 메소드 정의

군우 2018. 1. 17. 13:04
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package method06;
 
class ReculFactorial
{    
    public static void main(String[] args)
    {
        System.out.println("7 factorial: " 
            + factorial(7));        
        System.out.println("12 factorial: " 
            + factorial(12));
    }
    
    public static int factorial(int n)
    {
        if(n==1)
            return 1;
        else
            return n*factorial(n-1);
    }
}
cs



return 반환하는 곳에  자기 자신의 함수를 호출함.\


재귀할경우  

1. 재귀의 연결고리를 끊기위한 조건검사의 위치가  적절해야한다.

2. 재귀의 연결고리를 끊기위한조건검사가 true가 되도록

 적절한 연산이 필요하다.