洞察探讨小游戏SDK接入的最佳实践以及对企业跨平台开发的优势
728
2022-08-24
动态规划攻略之:第 N 个泰波那契数
泰波那契序列 Tn 定义如下:
T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2
给你整数 n,请返回第 n 个泰波那契数 Tn 的值。
示例1:
输入:n = 4输出:4解释:T_3 = 0 + 1 + 1 = 2T_4 = 1 + 1 + 2 = 4
示例2:
输入:n = 25
提示:
0 <= n <= 37答案保证是一个 32 位整数,即 answer <= 2^31 - 1。
解题思路
根据题意可知,本题可使用动态规划的思路来解答此题。 推导过程如下:
定义状态:T[i] 表示泰波那契数列的第 i 个数字;状态转移方程:T(N) = T(N - 1) + T(N - 2) + T(N 3), 其中 N >= 3;初始条件: T(0) = 0, T(1) = 1, T(2) = 1;
代码实现
class Solution { public int tribonacci(int { int[] arr = new int[38]; arr[0] = 0; arr[1] = 1; arr[2] = 1; for (int i = 3; i <= n; i++){ arr[i] = arr[i-1] + arr[i-2] + arr[i-3]; } return
最后
时间复杂度:O(n)空间复杂度:O(1)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~