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

滚动数组(空间优化)

给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。

在「杨辉三角」中,每个数是它左上方和右上方的数的和。

示例 1:

输入: rowIndex = 3
输出: [1,3,3,1]

示例 2:

输入: rowIndex = 0
输出: [1]

示例 3:

输入: rowIndex = 1
输出: [1,1]

提示:

  • 0 <= rowIndex <= 33

进阶:

你可以优化你的算法到 O(rowIndex) 空间复杂度吗?

优化前:

class Solution {
public:vector<int> getRow(int rowIndex) {int nums[34][34];for (int i = 0; i <= rowIndex; i++) {for (int j = 0; j < i + 1; j++) {if (j == 0 || j == i) {nums[i][j] = 1;} else {nums[i][j]=nums[i-1][j]+nums[i-1][j-1];}}}vector<int> ret;for(int i = 0;i <= rowIndex;i++){ret.push_back(nums[rowIndex][i]);}return ret;}
};

优化后:

class Solution {
public:vector<int> getRow(int rowIndex) {int arr[2][34];int now=1;int pre=0;arr[pre][0]=1;for(int i = 0;i<=rowIndex;i++){for(int j = 0;j<=i;j++){if(j==0||j==i){arr[now][j]=1;}else{arr[now][j]=arr[pre][j]+arr[pre][j-1];}}pre^=1;now^=1;}          vector<int> ret;for(int j = 0;j<=rowIndex;j++){ret.push_back(arr[pre][j]);}     return ret;                                      }
};

在遇到我们不需要使用前面几行的数据时,我们可以使用滚动数组,就是在两行之间来回交替的数组

http://www.dtcms.com/a/529885.html

相关文章:

  • 链表-哨兵节点链表【node5】
  • 中国国家住房和城乡建设部网站首页做网站的商家怎么后去流量费
  • 【Transformer入门到实战】神经网络基础知识和常见激活函数详解
  • 中国建设人才服务信息网是不是正规网站国家药品监督管理局
  • 中药饮片批发市场如何通过创新提升行业竞争力?
  • 宁波网站建设网页设计软件开发和网站开发难度
  • Java List 集合
  • 前缀和算法:高效解决区间和问题
  • 网站设计 价格湖南省建三公司官网
  • 阳江网络公司湖南seo推广方法
  • 丹东网站制作湖南人文科技学院简介
  • pandas转换为日期及期间切片
  • lol视频网站模板wordpress小说站模版
  • 免费申请账号网站卢松松网站
  • 站长统计幸福宝2022年排行榜网站优化过度被k
  • 看英语做游戏的网站长沙微网站
  • 整站优化 快速排名苏州园区人力资源中心
  • LeetCode算法日记 - Day 84: 乘积为正数的最长子数组长度
  • s001网站建设设计个人网站建设实训目的
  • 高端大气的广告公司名字seo关键词优化公司
  • pc网站转换成wapdw做网站环境配置
  • 江门网站建设方案外包做暖暖视频网站
  • 摄影行业网站论坛wordpress还是
  • 软文推广平台推荐:垂直领域精准触达,效果提升新路径
  • 数据库MySQL基础
  • 办网站租服务器大气网站源码
  • ps做图网站做loge的网站
  • wordpress主题样式优化软件
  • 公司怎么建网站做推广做电商网站的公司
  • 怎么用dw做带登陆的网站网站 建设ppt