目录

  • 题目内容
  • 解题思路
  • 代码实现

题目内容


给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

在杨辉三角中,每个数是它左上方和右上方的数的和。
示例:

输入: 5
输出:
[[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]
]

解题思路

这道题让我们求杨辉三角,而在杨辉三角中,每个数是它左上方和右上方的数的和。最简单的实现是,每行先剔除第一个元素和最后一个元素【直接赋值1】,然后计算中间元素,计算每个中间元素的值都是上一行的当前元素下标位置和下标位置减一的和

代码实现

public class Solution {public IList<IList<int>> Generate(int numRows) {//结果集合【并初始化定义集合大小,防止扩容导致不必要的内存浪费】var result = new List<IList<int>>(numRows);//元素小于1返回空集合if (numRows < 1) return result;//存入第一行result.Add(new[] {1});for (int i = 2; i <= numRows; i++){//创建当前行数组var row = new int[i];//得到上一行集合var lastRow = result[i - 2];//赋值第一个元素和最后一个元素为1row[0] = row[i - 1] = 1;//循环遍历当前行中间元素for (int j = i - 2; j >= 1; j--){//获取上一行的当前下标位置和上一行的当前下标元素-1的位置的和存入当前下标位置row[j] = lastRow[j - 1] + lastRow[j];}//计算整行值后就存入结果集合中result.Add(row);}//结果集合return result;}
}

LeetCode:帕斯卡三角形相关推荐

  1. (Leetcode) 帕斯卡三角形 - Python实现

    题目: 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行.Given a non-negative index k where k ≤ 33, return the kth in ...

  2. LeetCode 118 Pascal's Triangle(帕斯卡三角形)(vector)

    翻译 给定一个行数字,生成它的帕斯卡三角形.例如,给定numRows = 5, 返回: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1] ] 原文 Given numR ...

  3. 经典算法大全51例——3.杨辉三角(又称帕斯卡三角形)

    经典算法大全51例--3.杨辉三角(又称帕斯卡三角形) 算法目录合集 地址 说明 题目以及个人题解 原理分析 思路一--纵向寻踪 思路二--横向寻踪 代码实现--Java 方式一--纵向寻踪 方式二- ...

  4. 帕斯卡三角形(Pascal's triangle)

    // The following code is compiled on VC2005 // #include "stdafx.h" /*--------------------- ...

  5. 帕斯卡三角形html,Python实现的帕斯卡三角形

    带有缓存的迭代器 # 帕斯卡三角形 mCache = {} def pascalWithDict(n,k): if n==k or k==0 or n==1: return 1 if k==1: re ...

  6. java 帕斯卡,帕斯卡三角 有多少种可能,java编程 帕斯卡三角形 立刻求高手!! 给满分...

    帕斯卡三角 辉三角"简介 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 ...... 上述三角形数表称为"杨辉三角",它呈现了二项式展开式各项系数的规律.如 ...

  7. 帕斯卡三角形html,数学之美:杨辉三角(帕斯卡三角)的奇特性质

    杨辉三角(也称帕斯卡三角)相信很多人都不陌生,它是一个无限对称的数字金字塔,从顶部的单个1开始,下面一行中的每个数字都是上面两个数字的和. 杨辉三角,是二项式系数在三角形中的一种几何排列,在中国南宋数 ...

  8. 杨辉三角 帕斯卡三角形(C语言)

    杨辉三角 杨辉三角,是二项式系数在三角形中的一种几何排列. 在欧洲,这个表叫做帕斯卡三角形.帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年. 杨辉 ...

  9. c语言 10行帕斯卡三角形,C语言帕斯卡三角形打印示例

    帕斯卡三角形是向工程学生教授的典型例子之一. 它有很多的解释. 其中一个着名的是它与二项式方程的使用. 三角形之外的所有值都被认为是零(0). 第一行为0 1 0,而只有1获取帕斯卡三角形中的空格,0 ...

最新文章

  1. 2022-2028年中国钢铁冶炼行业市场研究及前瞻分析报告
  2. 深入理解PHP之数组遍历
  3. webpack入门(二)what is webpack
  4. prozilla Linux下的下载利器
  5. module 'scipy.misc' has no attribute 'imresize'
  6. JQuery 总结(2) jQuery 效果动画
  7. 【深度学习】使用 Pytorch 进行多类图像分类
  8. Cross-Attention Fusion Based Spatial-Temporal MGCN for Traffic Flow Prediction阅读笔记
  9. python 常见问题汇总(待续)
  10. 八数码问题II-双向bfs和map标记
  11. 德媒看2019年的世界:西方在争吵,中国在崛起,非洲在增长……
  12. webpack上线版(生产环境中推荐使用)
  13. 阿里云服务器内核编译升级
  14. mac系统升级 brew 是用不了_PostgreSQL数据库默默升级,导致数据库服务不可用
  15. drools 7.x 决策表使用
  16. ifconfig源码分析之与内核交互数据
  17. 计算机网络安全 单词
  18. vmware虚拟机使用docker使用代理国外镜像
  19. 图像处理之LSB替换隐写算法的实现
  20. 基于Java框架开发OA企业在线办公系统项目教程-附源码-毕业设计

热门文章

  1. 哈希算法--MD5算法
  2. 开发微信小程序火车订票选座系统毕业设计
  3. html表格和列表标签
  4. 我又花了28个小时分析了一下各省二类疫苗采购公示数据
  5. by组态-web组态软件
  6. 快手小铃铛跳转微信如何实现?最常用的方法案例解析
  7. 分享几款可以说是神器的高质量app
  8. Gungnir系列-jenkins01-编译部署maven项目(新版本)
  9. C语言--面向对象编程之多态
  10. js动态创建表格以及赋值