杨辉三角
给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。
思路:先分情况。然后迭代。。以后一定用一下递归
示例:
输入: 5 输出: [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ]
class Solution: def generate(self, numRows: int) -> List[List[int]]: n=numRows if(n==0): return [] elif(n==1): return [[1]] elif(n==2): return [[1],[1,1]] else: r=[[1],[1,1]] e=3 d=0 for _ in range(3,n+1): b=[1] for a in range(e-2): c=r[d+1][a]+r[d+1][a+1] b.append(c) b.append(1) r.append(b) e=e+1 d=d+1 return r
执行用时 : 92 ms, 在Pascal's Triangle的Python3提交中击败了6.40% 的用户
内存消耗 : 13 MB, 在Pascal's Triangle的Python3提交中击败了93.73% 的用户
这里没有什么坑。。注意用的变量。。可以避免越界情况。
posted on 2019-05-05 12:03 imyourterminal 阅读(122) 评论(0) 编辑 收藏 举报