일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 코드스테이츠
- MySQL
- 정규표현식
- 프로그래머스
- Hackerrank
- for문
- array
- 코딩공부
- join
- 개발자의 책장
- 코플릿
- 자바스크립트
- JavaScript
- 알고리즘
- node.js
- 블록체인
- Where
- 재귀함수
- select
- 역행자
- 개발자_조이킴
- SQL
- array.push()
- 최강의 인생
- Programmers
- Algorithms
- 배열
- Developer_JoyKim
- array.slice()
- 코딩테스트
Archives
- Today
- Total
CodingSpace
ToyProblem#2_fibonacci 본문
피보나치 수열은 다양한 방식으로 구현할 수 있다.
피보나치 수열은 다음과 같다:
0, 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ... |
① 먼저, easy한 방법!
function fibo(num) { if(num === 0) return 0 if(num === 1) return 1 return fibo(num-2) + fibo(num-1) } |
② 점화식을 활용한 방법!
피보나치 수열의 점화식을 유도는 아래 사이트 참고하자↓
function fibo(num) { let alpha = (1+Math.sqrt(5)) / 2 let beta = (1-Math.sqrt(5)) / 2 let gama = 1 / Math.sqrt(5) return Math.floor(gama * (Math.pow(alpha, n) - Math.pow(beta, n))) } |
Comments