当前位置: 首页 > news >正文

佳木斯城乡建设局官方网站家装博览会2023

佳木斯城乡建设局官方网站,家装博览会2023,成都网站建设常凡云,做流量网站有收入吗1. 动态规划 动规五部曲 确定dp数组(dp table)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序打印dp数组 每次写动态规划题要考虑清楚这五步,特别是每一步为什么这么写,才算掌握了一道题。 2. 斐波那契数 力扣 clas…

1. 动态规划

动规五部曲

  1. 确定dp数组(dp table)以及下标的含义
  2. 确定递推公式
  3. dp数组如何初始化
  4. 确定遍历顺序
  5. 打印dp数组

每次写动态规划题要考虑清楚这五步,特别是每一步为什么这么写,才算掌握了一道题。

2. 斐波那契数

力扣

class Solution {public int fib(int n) {if(n <= 1) return n;int[] nums = new int[n + 1];nums[0] = 0;nums[1] = 1;for(int i = 2; i <= n; i++){nums[i] = nums[i - 1] + nums[i - 2];}return nums[n];}
}

还可以做空间优化

class Solution {public int fib(int n) {if (n < 2) return n;int a = 0, b = 1, c = 0;for (int i = 1; i < n; i++) {c = a + b;a = b;b = c;}return c;}
}

递归写法

class Solution {
public:int fib(int N) {if (N < 2) return N;return fib(N - 1) + fib(N - 2);}
};

3. 爬楼梯

力扣

从到达第i层台阶有两种方法:从i-2走两步或者i-1走一步。令dp[i]表示走到第i层的所有方法,那么dp[i]就是dp[i - 1]和dp[i - 2]的总和。

class Solution {public int climbStairs(int n) {if(n <= 2) return n;//dp[i]:爬到第i层楼有几种解法int[] dp = new int[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];}
}

dp[0]的初始化没有意义,因为题目说明了从1开始。为了代码的统一性也可以从0开始:

public int climbStairs(int n) {int[] dp = new int[n + 1];dp[0] = 1;dp[1] = 1;for (int i = 2; i <= n; i++) {dp[i] = dp[i - 1] + dp[i - 2];}return dp[n];
}

4. 使用最小花费爬楼梯

力扣

dp[i]的定义:到达第i台阶所花费的最少体力为dp[i]。
可以有两个途径得到dp[i],一个是dp[i-1] 一个是dp[i-2]。
dp[i - 1] 跳到 dp[i] 需要花费 dp[i - 1] + cost[i - 1]。
dp[i - 2] 跳到 dp[i] 需要花费 dp[i - 2] + cost[i - 2]。
选最小的,所以dp[i] = min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2])。
题目中表述为:可以从0层或1层开始,证明可以初始化 dp[0] = 0,dp[1] = 0。

class Solution {public int minCostClimbingStairs(int[] cost) {int n = cost.length;int[] dp = new int[n + 1];dp[0] = 0;dp[1] = 0;for(int i = 2; i <= n; i++){dp[i] = Math.min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);}return dp[n];}
}
http://www.dtcms.com/a/450668.html

相关文章:

  • dedecms做视频网站房产网站建设整体架构
  • 代申请可信网站成都网站建设有名的公司
  • 网站开发快递文件58同城本地网页版
  • 城市分类信息网站建设网站开发与数据库
  • 企业网站建设一般要素马关县网站建设
  • 怎么做淘宝客网站备案网络软件公司
  • 商城版网站建设海外网站加速器免费
  • 公司网站制作公司排名专门做创意桌椅的网站
  • Transformer 模型简介
  • 自己做的网站能赚钱吗杭州百度百家号seo优化排名
  • 手机网站建设的规划做seo必须有自己网站吗
  • GitHub 热榜项目 - 日榜(2025-10-06)
  • 购物网站建设市场wordpress app插件下载
  • 招聘网站哪个好用茶叶网站策划书
  • 微服务项目->在线oj系统(Java-Spring)--C端用户(超详细)
  • <从零基础到精通JavaScript>1.2 变量声明 (let const)
  • 方差齐性(Homoscedasticity):概念、检验方法与处理策略
  • html个人网站制作wordpress按分类设置seo
  • 网站图片水印青海住房和城乡建设部网站
  • 网站备案了有什么好处wordpress chianz
  • 网站开发现在主要用什么语言企业网站运维
  • Windows环境下,源码启动+本地部署和启动开源项目Ragflow失败SRE模块
  • 高陵微网站建设北京seo网站结构优化
  • 【Leetcode hot 100】51.N皇后
  • 虚拟空间能建多个网站浙江省建设会计协会网站首页
  • 中英文网站域名的区别外贸网站开发哪家好
  • 网站加载不出来是什么原因建筑企业
  • 湖北省住房城乡建设厅网站查wordpress修改首页模板文件名
  • 个人做百度云下载网站吗c sql网站开发
  • 山东省建设公司网站怎样注册自己的微信小程序