力扣:118. 杨辉三角(Python3)

题目:

给定一个非负整数 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得到。

代码:

python 复制代码
class 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
相关推荐
悲伤小伞15 小时前
LeetCode 热题 100_4-283. 移动零
算法·leetcode·职场和发展
_Evan_Yao15 小时前
零基础学编程,第一门语言选Python还是C?
c语言·开发语言·python
星 海15 小时前
网络芯片对IP地址最长前缀匹配算法的实现
网络·算法
OYangxf15 小时前
力扣hot100【滑动窗口】
算法·leetcode·职场和发展
步步为营DotNet15 小时前
深入探究.NET 11 中.NET Aspire 在云原生应用持续集成与交付安全加固
python
CQU_JIAKE15 小时前
5.7【A】
算法
2zcode15 小时前
基于SVM与HOG算法的行人检测系统设计与实现
算法·机器学习·支持向量机
MATLAB代码顾问15 小时前
MATLAB实现粒子群算法优化PID参数
开发语言·算法·matlab
Soari15 小时前
深度办公革命:拆解 Claude for Microsoft 365,打造金融级智能办公生态
python·microsoft·金融·flask
翎沣15 小时前
C++11异常处理机制
java·c++·算法