代码随想录算法训练营day38

509. 斐波那契数

五部曲:

  • dp数组下标及含义:dp[i]表示第i个斐波那契数的值
  • dp数组初始化:dp[0]=0,dp[1]=1
  • 递推公式:dp[i] = dp[i - 1] + dp[i - 2]
  • 遍历方向:从前往后
  • dp数组推到举例:0,1,1,2,3,5,8,13
class Solution {
public:int fib(int n) {if(n<1) return n;vector<int> dp(n+1);dp[0] = 0;dp[1] = 1;for(int i = 2;i<=n;i++){dp[i] = dp[i-1] + dp[i-2];}return dp[n];}
};

70. 爬楼梯

五部曲:

  • dp数组下标及含义:dp[i]表示第i层楼梯有几种方法
  • dp数组初始化:dp[1]=1,dp[2]=2
  • 递推公式:dp[i] = dp[i - 1] + dp[i - 2]
  • 遍历方向:从前往后
  • dp数组推到举例:0,1,1,2,3,5,8,13

我们可以看出本题其实就是斐波那契数列问题。

class Solution {
public:int climbStairs(int n) {if (n <= 1) return n; vector<int> dp(n + 1);dp[1] = 1;dp[2] = 2;for (int i = 3; i <= n; i++) { dp[i] = dp[i - 1] + dp[i - 2];}return dp[n];}
};

746. 使用最小花费爬楼梯

五部曲:

  • dp数组下标及含义:dp[i]表示到达第i层楼梯最小花费
  • dp数组初始化:dp[0]=0,dp[1]=1
  • 递推公式:dp[i] = min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2])
  • 遍历方向:从前往后
  • dp数组推到举例:以cost = [1,100,1,1,1,100,1,1,100,1]为例
    0,0,1,2,2,3,3,4,4,5,6
class Solution {
public:int minCostClimbingStairs(vector<int>& cost) {vector<int> dp(cost.size() + 1);dp[0] = 0;dp[1] = 0;for(int i=2;i<=cost.size();i++){dp[i] = min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);}return dp[cost.size()];}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/810567.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【错误分享】打开Qt编译生成的软件,“无法找到入口”

错误简介 这张图片显示的是一个计算机错误提示窗口&#xff0c;标题为“无法找到入口”。正文内容是&#xff1a;“无法定位程序输入点_Z21qRegisterResourceDataaiPKhS0_S0_于动态链接库Qt5Core.dll上。” 这意味着在尝试运行程序时遇到了问题。 具体来说&#xff0c;该错误表…

Vue内置组件Transition用法介绍

Vue 提供了两个内置组件&#xff0c;可以帮助你制作基于状态变化的过渡和动画&#xff1a; <Transition> 会在一个元素或组件进入和离开 DOM 时应用动画。本章节会介绍如何使用它。 <TransitionGroup> 会在一个 v-for 列表中的元素或组件被插入&#xff0c;移动&a…

从大量数据到大数据,King’s SDMS仪器数据采集及科学数据管理系统的应用

对于实验室或检测机构&#xff0c;仪器设备是所有业务开展的基础&#xff0c;数据则是核心命脉&#xff0c;而传统的仪器设备原始数据收集方式&#xff0c;效率低耗时长、操作流程不规范、不易保存与查找、错误率高、易篡改等成了制约检测机构持续高速发展的瓶颈和弊端&#xf…

单例19c RMAN数据迁移方案

一、环境说明 源库 目标库 IP 192.168.37.200 192.168.37.202 系统版本 RedHat 7.9 RedHat 7.9 数据库版本 19.3.0.0.0 19.3.0.0.0 SID beg beg hostname beg rman 数据量 1353M 说明:源库已经创建数据库实例&#xff0c;并且存在用户kk和他创建的表空间…

新规来了!智能音视频技术重塑信贷体验

近日&#xff0c;国家金融监督管理总局发布《固定资产贷款管理办法》《流动资金贷款管理办法》《个人贷款管理办法》&#xff08;以下简称“三个办法”&#xff09;。 具体来看&#xff0c;新规明确了以下要求&#xff1a; 1、明确视频面签、电子签约要求 允许商业银行通过视…

Oracle 19c RAC集群相关日志

1.DB日志&#xff08;数据库日志&#xff09; Redo Log&#xff08;重做日志&#xff09;&#xff1a; 在Oracle数据库中&#xff0c;重做日志记录了数据库发生的所有修改操作&#xff0c;包括数据的插入&#xff0c;更新和删除。在RAC的环境中&#xff0c;每个实例都有自己的重…

javascript专题一 ---- 使用不同的方法将小数转换为整数方法总结

在 JavaScript 中&#xff0c;我们经常需要将小数转换为整数。以下是我总结的一些常见的方法&#xff1a; 1、Math.floor(): 这个方法会向下取整&#xff0c;返回小于或等于给定数字的最大整数 var num 3.14; var integerNum Math.floor(num); // integerNum 将会是 3 2、…

Ubuntu22.04搭建CLion C++开发环境

Ubuntu22.04搭建CLion C开发环境 文章目录 Ubuntu22.04搭建CLion C开发环境1.首先下载CLion2.配置c环境3.创建快捷方式Reference 1.首先下载CLion 进入官网https://www.jetbrains.com/clion/download/#sectionlinux 然后进入自己存放这个压缩包的路径中&#xff0c; sudo mkd…

SQLite从出生到现在(发布历史记录)(二十二)

返回&#xff1a;SQLite—系列文章目录 上一篇&#xff1a;从 SQLite 3.5.9 迁移到 3.6.0&#xff08;二十一&#xff09; 下一篇&#xff1a;SQLite—系列文章目录 引言&#xff1a; SQLite拥有别人无法比拟的装机量&#xff0c;究竟什么成就了SQLite呢&#xff0c;本…

蓝桥杯每日一题:空调(差分)

Farmer John 的 N头奶牛对他们牛棚的室温非常挑剔。 有些奶牛喜欢温度低一些&#xff0c;而有些奶牛则喜欢温度高一些。 Farmer John 的牛棚包含一排 N个牛栏&#xff0c;编号为 1…N&#xff0c;每个牛栏里有一头牛。 第 i&#xfffd; 头奶牛希望她的牛栏中的温度是 pi&am…

在Visual Studio Code中编辑React项目时,以下是一些推荐的扩展

ESLint&#xff1a;这个扩展可以集成ESLint到VS Code中&#xff0c;帮助你在编写代码时发现和修复JavaScript和TypeScript的语法错误和代码风格问题。 Prettier - Code formatter&#xff1a;Prettier是一个代码格式化工具&#xff0c;可以自动格式化你的代码以保持一致的代码…

最长公共子序列、最长上升子序列(LCS与LIS)算法

最长公共子序列、最长上升子序列(LCS与LIS) 最长公共子序列(LCS) #include <bits/stdc.h> using namespace std; #define int long long const int N 1e39; int a[N],b[N],dp[N][N]; signed main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int n,m;cin>>…

大文件传输之为啥传输过程中出现宽带不足的情况

在当今数字化时代&#xff0c;大文件传输已成为企业日常运营的关键环节。然而&#xff0c;许多企业在传输大文件时经常面临宽带不足的问题&#xff0c;这不仅影响了工作效率&#xff0c;还可能导致业务机会的丧失。本文将探讨大文件传输过程中宽带不足的原因&#xff0c;以及镭…

【数据结构】稀疏矩阵的快速转置

【数据结构】稀疏矩阵的转置&#xff08;普通转置 和 快速转置&#xff09; 目录 【数据结构】稀疏矩阵的转置&#xff08;普通转置 和 快速转置&#xff09;三元表稀疏矩阵的转置方法一&#xff08;普通转置&#xff09;复杂度为O(T.muT.nu)方法二&#xff1a;快速转置 复杂度…

springboot的特点以及优缺点

什么是springboot Spring Boot是一个开源的Java框架,用于创建独立的、基于Spring的应用程序。它简化了Spring应用程序的配置和部署过程,并提供了自动配置的功能,让开发人员能够更专注于业务逻辑的实现,而不需要过多地关注配置问题。 Spring Boot内置了一些常见的第三方库和…

【2024年5月】如何高效寻找软考高级论文素材?

一、自己做过的项目 若自己有做过的项目&#xff0c;那就是最好的&#xff01;建议不要换其他的项目来写&#xff0c;优先选择自己的&#xff0c;毕竟熟悉&#xff0c;容易临场发挥&#xff0c;别人的项目没有参与过&#xff0c;无法深有体会。 二、各大期刊网站 包括中国知…

mysql使用datetime,java如何保存

CREATE TABLE user (省略部分代码create_time datetime NOT NULL COMMENT 创建时间省略部分代码)java class User {private Timestamp createTime; }java8 import java.sql.Timestamp;省略部分代码 LocalDateTime now LocalDateTime.now(); // 获取当前日期时间 Timestamp t…

朝花夕拾 - 写在 29

人间一趟&#xff0c;积极向上&#xff01; 乘生日还有个小尾巴&#xff0c;写篇文章结个尾。 一、时间断层 众所周知我是个很喜欢分享的人&#xff0c;所以在 2023 年尾到现在一直没分享&#xff1a; 要么我懒劲犯了要么我真太忙了 罗列下需要补充分享的帖子&#xff1a; 202…

聚道云软件连接器助力企业实现CRM与税票系统对接,提升财务管理效率

一、客户介绍&#xff1a;行业翘楚&#xff0c;寻求数字化升级 某企业作为行业内的佼佼者&#xff0c;始终站在市场前沿&#xff0c;不断探索数字化转型的新路径。近年来&#xff0c;随着业务规模的扩大&#xff0c;该企业对于客户关系管理&#xff08;CRM&#xff09;与税务电…

数据分析python代码——数据填充

在Python中&#xff0c;我们通常使用pandas库来处理和分析数据。数据填充是数据预处理的一个重要步骤&#xff0c;用于处理数据中的缺失值。以下是使用pandas库进行数据填充的示例代码&#xff1a; 在数据分析中&#xff0c;处理缺失值&#xff08;空值&#xff09;是一个重要…