Leetcode Java Fibonacci Number
업데이트:
문제
코드
class Solution {
public int fib(int n) {
if (n <= 1) {
return n;
}
int pre = 0;
int curr = 0;
int result = 1;
for (int idx = 2; idx <= n; idx++) {
pre = curr;
curr = result;
result = pre + curr;
}
return result;
}
}
결과
설명
-
피보나치 수열의 n번째 숫자를 반환하는 문제이다.
-
n 이 1 이하인 경우 피보나치 수열의 결과와 순번이 동일하므로, n을 주어진 문제의 결과로 반환한다.
- 문제 풀이에 필요한 변수를 정의한다.
- pre는 피보나치 수열의 $n - 2$번째 값을 저장하기 위한 변수이다.
- curr은 피보나치 수열의 $n - 1$번째 값을 저장하기 위한 변수이다.
- result는 피보나치 수열의 n번째 값을 저장하기 위한 변수이다.
- 2부터 n까지 idx를 증가시키며 피보나치 수열의 값을 계산한다.
- pre에 curr을, curr에 result 값을 넣어준다.
- result는 pre와 curr의 값의 합을 넣어준다.
- 반복이 완료되면 피보나치 수열의 n번째 값을 저장한 result를 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기