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

外汇网站模版怎样注册网站域名

外汇网站模版,怎样注册网站域名,作图软件免费,站长工具黄70.爬楼梯 代码随想录原题,看这篇文章:C动态规划Part.1|动态规划理论基础、509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯 118.杨辉三角 题目链接:118.杨辉三角 一刷代码 时间复杂度和空间复杂度都造到 O ( n u m R o w s 2 ) O(num…

70.爬楼梯

代码随想录原题,看这篇文章:C++动态规划Part.1|动态规划理论基础、509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯

118.杨辉三角

题目链接:118.杨辉三角

一刷代码

时间复杂度和空间复杂度都造到 O ( n u m R o w s 2 ) O(numRows^2) O(numRows2)了。
基本思路就是先构造一个result存储最终的结果,然后定义一个dp数组来计算每一行的结果。

class Solution {
public:vector<vector<int>> generate(int numRows) {vector<vector<int>> result;for (int i = 0; i < numRows; i++) {vector<int> dp(i + 1, 1); // 行的大小应为i+1if (i >= 2) {  // 从第三行开始填充中间的数for (int j = 1; j < i; j++) {dp[j] = result[i - 1][j - 1] + result[i - 1][j]; // 正确使用result中的前一行}}result.push_back(dp);}return result;}
};

思路

很容易看到一个主要的性质:
杨辉三角中每个数字等于上一行的左右两个数字之和。

  • 确定dp数组下标和含义
    dp[i][j]等于第i行和第j列的值。

  • 确定递推公式
    递推公式很容易分析出来:
    dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1];
    也就是每个数字等于上一行左右两个数字之和,但是需要注意的是, 每一行的最左边和最右边的数字必须是1.

  • 初始化dp数组
    这里应该如何初始化呢?
    最直接的方式就是直接全部初始化成1,因为每一行除了第一个和最后一个元素,我们都能通过递推公式进行推导

  • 确定遍历顺序
    在leetcode的题目展示上面已经看的很清楚了,
    外循环从上往下遍历,内循环从左往右遍历。
    这里需要注意的是,由于每一行的元素个数都是变化的,所以关于行的初始化一定要在外循环中处理。代码如下:

for (int i = 0; i < numRows; ++i) {	//先遍历行dp[i].resize(i + 1); //将第i行的向量大小调整为i+1dp[i][0] = dp[i][i] = 1;for (int j = 1; j < i; +=j) {	//再遍历列dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1];}
}
  • 打印dp数组

还是比较简单的,这里就不写了。

CPP代码

其实思路还是很简单的,不过代码实现要一点小技巧,

  1. 在这里我们先创建一个大小为numRows的二维向量,其中每一行都是一个空的向量。在这种情况下,ret的初始状态是一个包含5行的二维向量,但每行都没有元素。
vector<vector<int>> dp(numRows);
  1. 然后我们在外循环中给每一行向量再调整大小,这样我们在原数组上做操作,空间复杂度一下就下来了。
for (int i = 0; i < numRows; ++i) {dp[i].resize(i + 1);...
}

总体代码如下

class Solution {
public:vector<vector<int>> generate(int numRows) {vector<vector<int>> dp(numRows);for (int i = 0; i < numRows; ++i) {dp[i].resize(i + 1);dp[i][0] = dp[i][i] = 1;for (int j = 1; j < i; ++j) {dp[i][j] = dp[i - 1][j] + dp[i - 1][j - 1];}}return ret;}
};

198.打家劫舍

代码随想录原题,看这篇文章:C++动态规划Part8|198.打家劫舍、213.打家劫舍II、198.打家劫舍III

http://www.yayakq.cn/news/734500/

相关文章:

  • 谷歌seo怎么提高网站权重天律网站建设
  • 广州市建设企业网站平台品牌建设和品牌打造方案
  • 怎么做网站可手机看上海自助建站平台
  • 建设商业门户网站的重要性如何下载免费直播软件
  • 网站根目录多出一.php云南网站seo外包
  • 企业建网站设计wordpress 下载主题
  • 2022年网站能用的学做网站格式工厂
  • 不会网站维护可以做吗网建是什么
  • 江西邮电建设工程有限公司网站韩都衣舍网站建设
  • 智慧团建网站登录入口电脑版完美网站建设
  • 网站开发公司流程岳阳网站界面设计
  • 贵阳监理建设网站广告设计论文
  • 网站服务搭建软件工程开发师工资
  • 网站建设移动端是什么意思中国企业500强企业名单
  • 网站设计文案淘宝店标logo在线制作免费
  • 山东教育行业网站建设推荐wordpress改造mip
  • 怎么查看网站是哪个公司建的什么网站做视频最赚钱
  • 一个页面的网站电商网站安全解决方案
  • 做公司网站大概需要多少钱啊公司注册地址在外地却在本地经营
  • 怎样接做网站的活360建筑网简历电话怎么修改
  • 什么网站做招聘收录好招标网官网入口
  • 天津市住房和城乡建设网站网站策划报告
  • 自己可以做一个网站吗装修全包报价明细表2023
  • 潍坊住房和城乡建设局招标网站企业建站要多少钱
  • 临沂网站建设价格wordpress远程保存图片大小
  • 深圳需要做网站的公司有哪些晋江文学城写作网站
  • 上海行业网站建设wordpress插件路径
  • 营销网站策划方案公司做网站计入什么科目
  • 如何编辑网站源代码自己怎么建立自己的国际网站
  • 中建八局第二建设有限公司百度seo关键词排名推荐