0까지 가면 *0으로 0이나 나와버리니까 1까지 갔을때 1 리턴
1 리턴하고 나서 dfs(2)의 2 리턴해서 1*2*3*4*5 형태로 다 출력된다
import java.util.*;
class Main {
public int dfs(int n){
if(n == 1) return 1;
else {
return n*dfs(n-1);
}
}
public static void main(String[] args) {
Main T = new Main();
Scanner in = new Scanner(System.in);
int n = in.nextInt();
System.out.println(T.dfs(n));
}
}
'알고리즘 이전 > 재귀, DFS, BFS, Tree, Graph' 카테고리의 다른 글
부분집합 구하기(DFS) (0) | 2023.08.15 |
---|---|
이진트리순회(DFS) (0) | 2023.08.15 |
피보나치 수열 (0) | 2023.08.14 |
이진수 출력 (0) | 2023.08.14 |
재귀함수(스택 프레임) (0) | 2023.08.14 |