1137.第N个泰波那契数(java)

1137.第N个泰波那契数

  • 题目
  • 思路
  • 代码

LeetCode笔记汇总

题目

泰波那契序列 Tn 定义如下:

T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2

给你整数 n,请返回第 n 个泰波那契数 Tn 的值。
1137.第N个泰波那契数(java)_第1张图片

思路

特殊情况n为0时返回0,为1或2时返回1。
当n大于3时,Tn为前三项和,因此我们可以用三个数来存储这三项的值,并且不断向后延长到n。

代码

class Solution {
    public int tribonacci(int n) {
        if(n == 0)  return 0;
        if(n == 1 || n == 2)    return 1;
        int a = 0, b = 1, c = 1;
        for (int i = 3; i <= n; i++) {
            int d = a + b + c;
            a = b;
            b = c;
            c = d;
        }
        return c;
    }
}

你可能感兴趣的:(LeetCode笔记,java,leetcode)