재귀함수란 ?
- 함수 안에서 자기 자신을 동일하게 호출하는 형태
- 여러 알고리즘에서 사용되기 때문에 익숙해질 필요가 있다.
- 시간 복잡도와 공간 복잡도는 O(n)
- 스택의 형태로 함수가 호출된다고 보면 된다.
public class MyFactorial { int factorial(int n) { if(n==1) return n; return n*factorial(n-1); } public static void main(String[] args) { MyFactorial myFactorial = new MyFactorial(); System.out.println(myFactorial.factorial(5)); } }