pure recursive는 그냥 순수한 재귀함수로 문제를 해결하는 방식이다.
코드는 짧아질 지 몰라도
매우 직관적이지 못하다.
아래 함수는 바로 밑 게시글에 있는 helper function recursive와 같은 문제풀이이다.
다만, 헬퍼 함수없이 순수히 재귀적으로만 문제를 해결한 것이다.
function collectOddValues(arr) {
let newArr = []
if (arr.length === 0) return
if (arr[0] % 2 !== 0) newArr.push(arr[0])
newArr = newArr.concat(collectOddValues(arr.slice(1)))
return newArr
}
collectOddValues([1,2,3,4,5,6,7,8,9])
'알고리즘, 자료구조' 카테고리의 다른 글
[탐색] 선형 탐색 (linear search) (2) | 2022.11.07 |
---|---|
[재귀] 피보나치 수열 (0) | 2022.11.07 |
[재귀] helper method recursive (0) | 2022.11.05 |
[재귀] 재귀(Recursion)란? (0) | 2022.11.03 |
(문제 해결 패턴) 슬라이딩 윈도우 (0) | 2022.11.02 |