재귀 함수 (Recursion Function)
- ETC
- 2018. 11. 29.
알고리즘 (Algorithm) - 재귀 함수 (Recursion Function)
✐ 개념
: 자신의 함수를 재참조하여 사용하는 방법
✐ Java 코드
✓ 재귀 함수 - 기본
1 2 3 4 | public static Object func() { System.out.println("My Function()!"); return func(); } | cs |
✓ 1 ~ n 까지의 합
1 2 3 4 5 6 | public static int sum(int n) { if(n = 0) return 0; return n + sum(n-1); } | cs |
✓ 팩토리얼 (Factorial)
1 2 3 4 5 6 | public static int factorial(int n) { if(n == 0) return 1; return n * factorial(n-1); } |
✓ 피보나치 수 (Fibonacci Numbers)
1 2 3 4 5 6 | public static int fibonacci(int n) { if(n < 2) return n; return fibonacci(n-1) + fibonacci(n-2); } | cs |
✓ 유클리드 호제법 (Euclidean Algorithm) : 최대공약수
1 2 3 4 5 6 7 8 9 10 11 12 | public static int euclid(int m, int n) { if(m < n) { int tmp = m; m = n; n = tmp; } if(n == 0) return m; return euclid(n, m%n); } | cs |
✔︎ 오타, 틀린 개념이 있을 경우 댓글 달아주세요~!
(확인 후 수정하도록 하겠습니다~^^)
✔︎ 추가할 개념이 있다면 댓글 부탁드립니다~!
(지식을 공유해주세요~^^)