杨辉三角

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

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

示例 1:

输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
示例 2:

输入: numRows = 1
输出: [[1]]

func generate(numRows int) [][]int {
    var li [][]int
    for j := 0; j < numRows; j ++ {
        var inn []int
        for k := 0; k < j + 1; k ++ {
            if k == 0 || k == j {
                inn = append(inn, 1)
            } else {
                inn = append(inn, li[j - 1][k - 1] + li[j - 1][k])
            }
        }
        li = append(li, inn)
    }

    return li
}
class Solution:
    def generate(self, numRows) -> [[int]]:
        li = []
        for j in range(numRows):
            inn = []
            for k in range(j + 1):
                if k == 0 or k == j:
                    inn.append(1)
                else:
                    inn.append(li[j - 1][k - 1] + li[j - 1][k])
            li.append(inn)
        return li

结束!

posted @ 2022-04-10 22:38  aaronthon  阅读(14)  评论(0编辑  收藏  举报