728x90
인프런의 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 강의를 수강하며 풀이 코드를 정리하고 있습니다.
- 문제 설명 : 자연수 n이 입력되면 n! 을 구하는 문제
자료구조 책과 같은 곳에서 재귀함수를 설명할 때 흔히 볼 수 있는 문제이다.
풀이
- 재귀를 사용하여 풀이
n이 5일때, 메서드의 호출과 반환 과정은 다음과 같다.(->는 메서드 호출 순서, <- 은 반환 순서)
//팩토리얼
public class Main7_3 {
public static int factorial(int n) {
if (n == 1)
return 1;
else
return n * factorial(n - 1);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println(factorial(n));
sc.close();
}
}
댓글