美文网首页
每天(?)一道Leetcode(11) Pascal's Tri

每天(?)一道Leetcode(11) Pascal's Tri

作者: 失业生1981 | 来源:发表于2019-01-25 23:20 被阅读0次

Array

118. Pascal's Triangle

Given a non-negative integer numRows, generate the first numRows of Pascal's triangle.
即杨辉三角
给定一个数numRows指定杨辉三角的行数,然后按照规则生成矩阵
举个例子:
Input: 5
Output:
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]

Solutions:

哇我写了一个faster than 100% python 的代码,开心!!!虽然是一道easy的题
就按照矩阵构造的逻辑来,先确定好形状,然后从第三行开始,让指定位置上的元素为上一行两元素和

class Solution:
    def generate(self, numRows):
        """
        :type numRows: int
        :rtype: List[List[int]]
        """
        matrix=[[1]*i for i in range(1,numRows+1)]
        k=2
        i=1
        while k<numRows:
            for i in range(1,k):
                matrix[k][i]=matrix[k-1][i-1]+matrix[k-1][i]
                if k-1==i:
                    continue
            k+=1
        return matrix

相关文章

网友评论

      本文标题:每天(?)一道Leetcode(11) Pascal's Tri

      本文链接:https://www.haomeiwen.com/subject/secbjqtx.html