题目:
给定一个非负整数
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
相关推荐
mmz1207几秒前
分治算法(c++)love530love15 分钟前
技术复盘:llama-cpp-python CUDA 编译实战 (Windows)睡一觉就好了。20 分钟前
快速排序——霍尔排序,前后指针排序,非递归排序Tansmjs1 小时前
C++编译期数据结构金枪不摆鳍1 小时前
算法-字典树diediedei1 小时前
C++类型推导(auto/decltype)逄逄不是胖胖1 小时前
《动手学深度学习》-60translate实现橘颂TA1 小时前
【测试】自动化测试函数介绍——web 测试爱学习的阿磊1 小时前
Python上下文管理器(with语句)的原理与实践m0_736919101 小时前
Python面向对象编程(OOP)终极指南