当前位置:首页 > 行业动态 > 正文

python杨辉三角 _Python

杨辉三角是一个二维列表,其中每个数字是它两肩上的数字之和,在杨辉三角中,每行的第一个和最后一个数字总是1。

以下是一个Python函数,可以生成指定行数的杨辉三角:

def generate(numRows):
    res = []
    for i in range(numRows):
        row = [None for _ in range(i+1)]
        row[0], row[1] = 1, 1
        for j in range(1,len(row)1):
            row[j] = res[i1][j1] + res[i1][j]
        res.append(row)
    return res

在这个函数中,我们首先创建一个空的结果列表res,对于每一行,我们创建一个新的列表row,并将第一个和最后一个元素设置为1,接着,我们遍历这一行的剩余元素(即中间的元素),并将它们设置为上一行对应位置的元素和前一个元素之和,我们将这一行添加到结果列表中。

如果我们想生成5行的杨辉三角,我们可以这样调用这个函数:

print(generate(5))

这将输出:

[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
0