[자료구조/알고리즘] 재귀
재귀함수 예시)
case 1. 배열의 합 구하기
- for문의 사용한 경우
public int arrSum(int[] arr){
int sum = 0;
for(int i : arr){
sum += i;
}
return sum;
}
-재귀함수를 사용한 경우
public int arrSum(int[] arr){
//Base Case
//arr의 길이가 0일때 0을 리턴
if(arr.length == 0){
return 0;
}
//Recursive Case
//배열의 첫번째와 첫번째를 뺀 배열을 재귀호출
int[] tail = Arrays.copyOfRange(arr, 1, arr.length);
return arr[0] + arrSum(tail);
}