手把手教你解杨辉三角
题目描述:
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行在「杨辉三角」中,每个数是它左上方和右上方的数的和。
示例:
输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
解题步骤:
1、定义一个容器(双层)并初始化,用来存储数据。
2、分配每层容器存储数据个数,满足题目要求
3、初始化每层容器起始位置和终止位置的值
4、根据要求计算每层除起始位置与终止位置的值
5、结束返回
##下来就让我们按照以上思路进行编程吧!##
定义容器
vector<vector<int>> vv;//定义容器
vv.resize(numRows);//开辟容器并初始化
分配每层数据个数
//for(size_t i=0;i<vv.size();++i)for(size_t i=0;i<numRows;++i){vv[i].resize(i+1);//每层都比上一层空间多了一个}
初始化起始位置与终止位置的值为1
for(size_t i=0;i<numRows;++i)
{// vv.[i][0]=vv[i][vv[i].size()-1]=1;vv[i][0]=vv[i][i]=1;}
计算其他位置的值
for(int i=0;i<vv.size();++i)
{for(int j=0;j<vv[i].size();++j){if(vv[i][j]!=1){vv[i][j]=vv[i-1][j]+vv[i-1][j-1];}}
}
结束返回
return vv;
整体代码
class Solution {public:vector<vector<int>> generate(int numRows){vector<vector<int>> vv;vv.resize(numRows);for(size_t i=0;i<numRows;++i){vv[i].resize(i+1);}for(size_t i=0;i<numRows;++i){vv[i][0]=vv[i][i]=1;}for(int i=0;i<vv.size();++i){for(int j=0;j<vv[i].size();++j){if(vv[i][j]!=1){vv[i][j]=vv[i-1][j]+vv[i-1][j-1];}}}return vv;}
};
手把手教你解杨辉三角相关推荐
- 算法详解--杨辉三角
百度简介 杨辉 (南宋著名数学家) 编辑 杨辉,字谦光,汉族,钱塘(今杭州)人,南宋杰出的数学家和数学教育家,生平履历不详.曾担任过南宋地方行政官员,为政清廉,足迹遍及苏杭一带. 他在总结民间乘除捷算 ...
- C语言实现-杨辉三角(详解解析-知识点总结)
题目简介 杨辉三角,是二项式系数在三角形中的一种几何排列,今天我们通过在屏幕上打印杨辉三角来复习和详解杨辉三角所涉及C语言的相关知识. 代码一览 #include<stdio.h> vo ...
- python杨辉三角两种写法详解
一般写杨辉三角都是用二维数组,通过二维数组的下标,可以非常容易的计算出下一行结果. [1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 1 ...
- 【每日一算法】杨辉三角 II
每日一算法-杨辉三角 II 题目 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 3 输出: [1,3,3,1] ...
- 【算法竞赛】杨辉三角 | 杨辉三角与组合数的关系 | 杨辉三角的算法应用 | c++代码实现公式获取杨辉三角位置的值
杨辉三角详解 杨辉三角是什么? 杨慧三角是二项式系数在三角形中的一种集合排列!! 换一种说法: 杨辉三角是二项式系数, 通过数据三角形表示, 发现的数学规律. 杨辉三角与二项式系数联系 定义: 在数学 ...
- python杨辉三角居中_python打印杨辉三角的两种方法及详解
艾斯压阵 1c950a7b02087bf4200394cdf1d3572c11dfcf23.jpg 一盏灯, 一片昏黄: 一简书, 一杯淡茶. 守着那一份淡定, 品读属于自己的寂寞. 保持淡定, 才能 ...
- LeetCode-118杨辉三角C++详解
题目 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 5 输出: [ [1], [1,1], [1,2,1] ...
- python杨辉三角函数_python杨辉三角输出指定行_使用python打印十行杨辉三角过程详解...
如何用python输出杨辉三角 程序输出需要实现如下效果: [1] [1,1] [1,2,1] [1,3,3,1] .. 方法:迭代,生成器 12345678910111213141516171819 ...
- python杨辉三角输出指定行_python杨辉三角输出指定行_使用python打印十行杨辉三角过程详解...
如何用python输出杨辉三角 程序输出需要实现如下效果: [1] [1,1] [1,2,1] [1,3,3,1] .. 方法:迭代,生成器 12345678910111213141516171819 ...
最新文章
- python argparser模块的相关使用
- mongodb php 存储文件大小,PHP MongoDB GridFS 存储文件的方法详解
- JVM垃圾回收算法 总结及汇总
- html div标签的 class属性是干嘛用的?
- C# Socket系列二 简单的创建 socket 通信
- php如何解码图片,php基于base64解码图片与加密图片还原实例_PHP
- 操作系统实验文件管理_系统设计硬核知识(5)——操作系统的文件管理
- 【CSDN】-官方插件推荐懒人必备神器
- java 同步和异步_知道什么叫同步和异步吗?
- tomcat+路由器+oray
- Linux 信号量互斥编程
- 汇总Eclipse快捷键
- 你还因为缺“Java项目经验”找不到工作?适合应届生的20个“项目经验”送给你
- 电子元器件采购需要掌握哪些基础知识?
- 2013下学期c语言作业,2013年计算机二级C语言模拟试题三及答案
- 24核超级计算机,24核装备 Intel发布最强14nm至强处理器
- PCB添加图片或logo的方法
- MOS管的导通过程及损耗分析
- Cisco RV340命令执行漏洞(CVE-2022-20707)及关联历史漏洞分析
- 楼天成回忆录 ACRush
热门文章
- 名著学习-悲惨世界(雨果、冉阿让、拿破仑)
- 2020-8-26 剑指offer编程小哥令狐 075211
- PPT如何制作标题幻灯片
- 波士顿大狗运动仿真-Unity3D
- 魔兽争霸微操教学(精华篇)
- 【ORACLE 】ORACLE OCP 071考点记录01
- 特别策划:深度解析大学生“白菜价”现状
- 【专题3:电子工程师 之 上位机】 之 【44.使用ffmpeg对视频解码、视频像素和尺寸转换、重采样】
- git仓库与vscode关联
- python代码转成php代码的工具 或者go转成php的代码,想把odoo改成成php swoole当成web服务+go的架构