leetcode-118. 杨辉三角 运行时间超越提交的100%

一、题目要求

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

在杨辉三角中,每个数是它左上方和右上方的数的和。


二、代码及思路(注释是运行代码后)

class Solution(object):
    def generate(self, numRows):
        """
        :type numRows: int
        :rtype: List[List[int]]
        """
        result=[]
        # 这里根据numRows的数值大小不断增加杨辉三角的下一行,如果numsRows为0则不进入循环
        for i in range(0,numRows):
            result.append([1])
            for j in range(1,i):
                result[i].append(result[i-1][j-1]+result[i-1][j])#这里的求值符合杨辉三角对下一行求值的要求
            if i>0:    #这里增加一个限制使从第二行开始才出现首尾都添1
                result[i].append(1)
        return result


三、运行结果


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页