题目:
给定一个非负整数
numRows, 生成「杨辉三角」的前 *numRows*行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。
来源:力扣(LeetCode)
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
示例:
示例 1:
输入:numRows = 5
输出:[0,1]
解释:[[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
示例 2:
输入:numRows = 1
输出:[[1]]
解法:
寻找规律:
1, 1\] = \[0, 1\] + \[1, 0
1, 2, 1\] = \[0, 1, 1\] + \[1, 1, 0
1, 3, 3, 1\] = \[0, 1, 2, 1\] + \[1, 2, 1, 0
1, 4, 6, 4, 1\] = \[0, 1, 3, 3, 1\] + \[1, 3, 3, 1, 0
所以第i行=第i-1行左添0+右添0得到。
代码:
pythonclass Solution: def generate(self, numRows: int) -> List[List[int]]: result = [] n = [1] for _ in range(numRows): result.append(n) n = [x + y for x, y in zip([0] + n, n + [0])] return result
力扣:118. 杨辉三角(Python3)
恽劼恒2023-10-03 20:04
相关推荐
蒟蒻的贤3 分钟前
编译原理里的冲突到底是什么?码界筑梦坊7 分钟前
125-基于Flask的客户购物偏好数据可视化分析系统_深海凉_18 分钟前
LeetCode热题100-二叉树的右视图圣保罗的大教堂21 分钟前
leetcode 1391. 检查网格中是否存在有效路径 中等测试秃头怪21 分钟前
接口测试与常用接口测试工具详解坐吃山猪22 分钟前
【Nanobot】README03_LEVEL2_工具系统架构计算机安禾26 分钟前
【c++面向对象编程】第29篇:定位new(placement new):在指定内存上构造对象淞綰29 分钟前
c语言的练习-字符串的练习-寻找最长连续字符以及出现次数计算机安禾31 分钟前
【c++面向对象编程】第27篇:空类的大小为什么是1?——C++对象标识的秘密河阿里31 分钟前
Python容器:特性、区别和使用场景