题目:
给定一个非负整数
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
相关推荐
倒头就睡的小比特10 小时前
算法竞赛C++常用的STL默_笙10 小时前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的小羊没烦恼!10 小时前
初探性能优化——2个月到4小时的性能提升qq_4260039610 小时前
启动playwright录制codegen生成自动化测试脚本虎头金猫10 小时前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺长沙三为智能科技10 小时前
家政小程序开发从0到上线:五阶段交付流程与验收清单伞伞悦读11 小时前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__猎头南楼11 小时前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师只睡四小时11 小时前
Canvas 弹道联机实战:700 行 + 固定时间步长旖旎夜光12 小时前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解