【每日算法】动态规划一

斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:

F(0) = 0,F(1) = 1
F(n) = F(n – 1) + F(n – 2),
其中 n > 1
给你 n ,请计算 F(n) 。

示例 1:
输入:2
输出:1
解释:F(2) = F(1) + F(0) = 1 + 0 = 1
示例 2:
输入:3
输出:2
解释:F(3) = F(2) + F(1) = 1 + 1 = 2

示例 3:
输入:4
输出:3
解释:F(4) = F(3) + F(2) = 2 + 1 = 3

class Solution(object):
    def fib(self, n):
        if n<2: 1 return n #因为只和前两个有关,就定义两个变量 dp1,dp2="0,1" for _ in range(n-1): t="dp2" dp2="dp1+dp2" dp1="t" def fib2(self, n): # print(n) if n<2: f(0)="0&#xFF0C;F(1)&#xA0;=" f(n)="F(n" - 1) + f(n 2), nums="[0]*(n+1)" nums[1]="1" i range(2,n+1): nums[i]="nums[i-1]+nums[i-2]" print(i,nums[i]) nums[-1] < code></2:>
&#x6CF0;&#x6CE2;&#x90A3;&#x5951;&#x5E8F;&#x5217;&#xA0;Tn&#xA0;&#x5B9A;&#x4E49;&#x5982;&#x4E0B;&#xFF1A;&#xA0;

T0 = 0, T1 = 1, T2 = 1, &#x4E14;&#x5728; n >= 0&#xA0;&#x7684;&#x6761;&#x4EF6;&#x4E0B; Tn+3 = Tn + Tn+1 + Tn+2

&#x7ED9;&#x4F60;&#x6574;&#x6570;&#xA0;n&#xFF0C;&#x8BF7;&#x8FD4;&#x56DE;&#x7B2C; n &#x4E2A;&#x6CF0;&#x6CE2;&#x90A3;&#x5951;&#x6570;&#xA0;Tn &#x7684;&#x503C;&#x3002;
&#x793A;&#x4F8B; 1&#xFF1A;
&#x8F93;&#x5165;&#xFF1A;n = 4
&#x8F93;&#x51FA;&#xFF1A;4
&#x89E3;&#x91CA;&#xFF1A;
T_3 = 0 + 1 + 1 = 2
T_4 = 1 + 1 + 2 = 4
&#x793A;&#x4F8B; 2&#xFF1A;
&#x8F93;&#x5165;&#xFF1A;n = 25
&#x8F93;&#x51FA;&#xFF1A;1389537
class Solution(object):
    def tribonacci(self, n):
        # T0 = 0, T1 = 1, T2 = 1,
        # &#x4E14;&#x5728; n >= 0&#xA0;&#x7684;&#x6761;&#x4EF6;&#x4E0B; Tn+3 = Tn + Tn+1 + Tn+2
        if n==0: return 0
        if n==1 or n==2: return 1
        nums=[0]*(n+1)
        nums[1]=nums[2]=1
        for i in range(3,n+1):
            nums[i]=nums[i-1]+nums[i-2]+nums[i-3]
        # print(nums)
        return nums[-1]

Original: https://www.cnblogs.com/hitechr/p/15123560.html
Author: Hitechr
Title: 【每日算法】动态规划一

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/590439/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 盲撸 Ant Design Pro 开篇

    碎语 本人是从事后端开发,但是自己一直是前后端都写的,之前一直使用vue,因为vue简单么上手快,但是vue一直感觉没有特别好用的中台框架,最近打算撸一撸 Ant Design P…

    Java 2023年6月8日
    093
  • Java SPI机制,你了解过吗?

    Life moves pretty fast,if you don’t stop and look around once in a while,you will mi…

    Java 2023年6月5日
    097
  • 国内三大地图(腾讯、高德、百度)路线规划功能的整合

    写在前面 基于导航到门店的需求,于是有了这一个随笔,例如一些社区团购,自提点导航的功能,同样适用的。 话不多说,开整 一、先定一个目标点(这个通常是通过接口获取的) 建议通过腾讯地…

    Java 2023年6月16日
    0161
  • Python3 virtual environment 在 vscode 的实践

    1、虚拟环境实际上就是将 python 解释器 + 项目中可能用的的modules,统一放在虚拟环境对应的目录 2、activate 虚拟环境,只是保证相关module下载到对应文…

    Java 2023年6月7日
    070
  • Hexo 开启统计功能

    Hexo 博客统计服务, 基于 Redis 实现。使用 hyperloglog 统计 UV。 开源地址:https://github.com/stulzq/hexo-statist…

    Java 2023年6月8日
    0110
  • Nginx中的Rewrite的重定向配置与实践

    简介:Rewrite是Nginx服务器提供的一个重要的功能,它可以实现URL重定向功能。回到顶部 一:理解地址重写 与 地址转发的含义。 地址重写与 地址转发是两个不同的概念。 地…

    Java 2023年5月30日
    096
  • springboot devtools热启动

    热加载在pom.xml中添加devtools的maven引用,同时在plugin中添加devtools生效标志 <dependency> <groupId>…

    Java 2023年5月30日
    068
  • 【干货】MySQL底层架构设计,你了解多少?

    很多开发同学对SQL优化如数家珍,却对MySQL架构一知半解。岂不是只见树叶,不见森林,终将陷入细节中不能自拔。 今天就一块学习MySQL分层架构,深入了解MySQL底层实现原理,…

    Java 2023年6月8日
    075
  • 数据库学习记录(四)

    1.union(可以将查询结果集相加) 案例:找出岗位是SALEMAN和MANAGE的员工 第一种:select ename,job from emp where job =&#8…

    Java 2023年6月7日
    052
  • Java的lamda表达式/函数式接口/流式计算

    在我们看他人code的时候经常会看到,可能会经常看到lambda表达式,函数式接口,以及流式计算。在刚接触这些新功能时,也觉得真的有必要吗?但是现在写多了,发现这个功能确实能简化代…

    Java 2023年6月7日
    071
  • Qt使用OpenGL进行多线程离屏渲染

    基于 Qt Widgets的 Qt程序,控件的刷新默认状况下都是在UI线程中依次进行的,换言之,各个控件的 QWidget::paintEvent方法会在UI线程中串行地被调用。若…

    Java 2023年5月30日
    086
  • JVM中的堆

    堆 内存结构 堆的核心概念 《java虚拟机规范》中对java堆的描述是:所有的对象实例以及数组都应当在运行时分配在堆上。 一个JVM实例只存在一个堆内存(就是new 出来一个对象…

    Java 2023年6月13日
    068
  • 2.门面Slf4j+Simple简单实现

    1.导入pom文件 org.slf4j slf4j-api 1.7.27 org.slf4j slf4j-simple 1.7.27 2.使用 import org.slf4j.L…

    Java 2023年6月13日
    064
  • bean标签使用

    Java代码 ​ bean标签中添加scope属性,设置bean对应对象生成规则. 2.1 scope = “singleton” ​ 单例,默认值,适用于…

    Java 2023年6月13日
    057
  • 聊聊支付流程的设计与实现逻辑

    新手打怵老手头疼的业务; 一、业务背景 通常在业务体系中,都会或多或少的涉及到支付相关的功能;对于一些经验欠缺同学来说,最紧张的就是面对这类支付结算的逻辑,因为流程中的任何细节问题…

    Java 2023年6月15日
    084
  • Android 设置应用字体不随用户设置改变

    public class MyApplication extends Application { @Override public void onCreate() { super….

    Java 2023年6月9日
    074
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球