1137. 第 N 个泰波那契数『简单』

题目来源于力扣(LeetCode

一、题目

1137. 第 N 个泰波那契数

题目相关标签:递归

提示:

  • 0 <= n <= 37
  • 答案保证是一个 32 位整数,即 answer <= 2^31 - 1

二、解题思路

  1. 因 0 <= n <= 37,则创建长度为 38 的 int 数组 nums

  2. 据题意,将 nums[0] = 0,nums[1] = 1,nums[2] = 1

  3. 从 3 开始循环至 n(包含 n)

  4. 计算出 nums[i] 的结果,结果为索引 i 的前三项之和

  5. 最终结果为 nums[n]

三、代码实现

public static int tribonacci(int n) {
    int[] nums = new int[38];
    nums[0] = 0;
    nums[1] = 1;
    nums[2] = 1;

    for (int i = 3; i <= n; i++) {
        nums[i] = nums[i - 1] + nums[i - 2] + nums[i - 3];
    }
    return nums[n];
}

四、执行用时

五、部分测试用例

public static void main(String[] args) {
    int n = 4;  // output: 4
//    int n = 25;  // output: 1389537

    int result = tribonacci(n);
    System.out.println(result);
}
posted @ 2020-06-21 19:55  知音12138  阅读(61)  评论(0编辑  收藏