LeetCode刷题1137-第n个泰波那契数-

简介: LeetCode刷题1137-第n个泰波那契数-


1.png

文章目录


☀️ 前言 ☀️

算法作为极其重要的一点,是大学生毕业找工作的核心竞争力,所以为了不落后与人,开始刷力扣算法题!


🙀 作者简介 🙀

大家好,我是布小禅,一个尽力让无情的代码变得生动有趣的IT小白,很高兴能偶认识你,关注我,每天坚持学点东西,我们以后就是大佬啦!

📢 :❤布小禅❤

📢 作者专栏:

❤Python❤

❤Java❤

❤力扣题❤

这是我刷第 84/100 道力扣简单题


💗 一、题目描述 💗

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

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

给你整数 n,请返回第 n 个泰波那契数 Tn 的值。

来源:力扣(LeetCode)


链接:https://leetcode-cn.com/problems/n-th-tribonacci-number


著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

示例1:

输入:n = 4
输出:4
解释:
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4

示例2:

输入:n = 25
输出:1389537

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


💁 二、题目解析 💁

思路1

- 先定义头3项
  • 通过遍历的方法将第n个数放进数组
  • 然后返回数组第n(这里的n与数组下标一致,从0开始)个元素


🏃 三、代码 🏃

☁️ C语言☁️

/*
  使用英雄哥求斐波那契数列的方法
  - 先定义头3项
  - 通过遍历的方法将第n个数放进数组
  -然后返回数组第n(这里的n与数组下标一致,从0开始)个元素
*/
int tribonacci(int n){
    int ans[38];        // (1) 定义一个37的数组
    ans[0] = 0;         // (2) 定义前三个元素
    ans[1] = 1;
    ans[2] = 1;
    for (int i=3;i<=n;i++)
    {
        ans[i] = ans[i-1] + ans[i-2] + ans[i-3];    // (3) 将计算出的泰波那契数存进数组
    }
    return ans[n];
}


🌔 结语 🌔

坚持最重要,每日一题必不可少!😸

期待你的关注和督促!😛

1.png

目录
相关文章
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 32 - III. 从上到下打印二叉树 III
本文介绍了两种Python实现方法,用于按照之字形顺序打印二叉树的层次遍历结果,实现了在奇数层正序、偶数层反序打印节点的功能。
26 6
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 26. 树的子结构
这篇文章提供了解决LeetCode上"剑指Offer 26. 树的子结构"问题的Python代码实现和解析,判断一棵树B是否是另一棵树A的子结构。
27 4
|
13天前
|
搜索推荐 索引 Python
【Leetcode刷题Python】牛客. 数组中未出现的最小正整数
本文介绍了牛客网题目"数组中未出现的最小正整数"的解法,提供了一种满足O(n)时间复杂度和O(1)空间复杂度要求的原地排序算法,并给出了Python实现代码。
40 2
|
13天前
|
索引 Python
【Leetcode刷题Python】从列表list中创建一颗二叉树
本文介绍了如何使用Python递归函数从列表中创建二叉树,其中每个节点的左右子节点索引分别是当前节点索引的2倍加1和2倍加2。
15 7
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 30. 包含min函数的栈
本文提供了实现一个包含min函数的栈的Python代码,确保min、push和pop操作的时间复杂度为O(1)。
12 4
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 22. 链表中倒数第k个节点
Leetcode题目"剑指 Offer 22. 链表中倒数第k个节点"的Python解决方案,使用双指针法找到并返回链表中倒数第k个节点。
32 5
|
13天前
|
算法 Python
【Leetcode刷题Python】 LeetCode 2038. 如果相邻两个颜色均相同则删除当前颜色
本文介绍了LeetCode 2038题的解法,题目要求在一个由'A'和'B'组成的字符串中,按照特定规则轮流删除颜色片段,判断Alice是否能够获胜,并提供了Python的实现代码。
23 3
|
13天前
|
算法 Python
【Leetcode刷题Python】剑指 Offer 33. 二叉搜索树的后序遍历序列
本文提供了一种Python算法,用以判断给定整数数组是否为某二叉搜索树的后序遍历结果,通过识别根节点并递归验证左右子树的值是否满足二叉搜索树的性质。
11 3
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 32 - II. 从上到下打印二叉树 II
本文提供了一种Python实现方法,用于层次遍历二叉树并按层打印结果,每层节点按从左到右的顺序排列,每层打印到一行。
23 3
|
13天前
|
Python
【Leetcode刷题Python】剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
Leetcode题目"剑指 Offer 21. 调整数组顺序使奇数位于偶数前面"的两种Python解决方案,一种是使用双端队列调整数组顺序,另一种是使用双指针法将奇数移到数组前半部分,偶数移到后半部分。
15 4