Optimizable

이효범·2022년 4월 27일
0

ES6 - OOP & FRP

목록 보기
15/15
post-thumbnail

팩토리얼 코드 예시를 보며 Optimizable 에 대해 알아본다.

다음은 일반적인 팩토리얼 코드의 예시이다.

const factorial = function(n) {
 let result = 1;
  
  while(n > 1) {
   reult *= n;
   n--;
  }
  
  retrun result;
}

다음은 재귀를 이용한 팩토리얼 코드이다.

const factorial = function(n) {
 if (n < 2) {
  return 1; 
 }
 return n * factorial(n-1);
}

다음은 Optimizable를 사용한 팩토리얼 코드이다.

const factorial = function(n, accum = 1) {
 if (n < 2) {
  return accum; 
 }
 return factorial(n - 1, n * accum);
}

Optimizable 을 이용하면 스택에 메모리가 누적해서 쌓이지 않고
항상 일정한 메모리만을 사용하여 계산하므로 최적화에 좋다.

profile
I'm on Wave, I'm on the Vibe.

0개의 댓글