효율적인 피보나치 함수

hyxoo·2023년 4월 13일
0

코테뽀개기

목록 보기
1/1
function fibonacci(n) {
  // TODO: 여기에 코드를 작성합니다.
  
  let result = [0, 1]; // 배열에 미리 n이 0과 1일 때의 값 저장

  let fib = (n) => { // 재귀함수로 이용해줄 함수
    if (result[n] !== undefined){ // n번째 값이 저장되어 있다면
      return result[n]; // 함수를 호출하지 않고 배열에 저장된 값 사용 
    }
    result[n] = fib(n - 1) + fib(n - 2); // 없다면 재귀 호출로 피보나치 수 구해서 배열에 저장
    return result[n]; // 배열에 저장된 값 return
  };

  return fib(n)
  
}
profile
hello world!

0개의 댓글