leetcode:Pascal's Triangle【Python版】

1、这道题一次提交就AC了;

2、以前用C语言实现的话,初始化二维数组全部为0,然后每行第一个元素为1,只需要用a[i][j] = a[i-1][j]+a[i-1][j-1]就可以了;

3、在Python中难点应该就是每行的第一个元素和最后一个元素,最后一个元素通过判断j==i就可以区分了;

 1 class Solution:
 2     # @return a list of lists of integers
 3     def generate(self, numRows):
 4         ret = []
 5         for i in range(numRows):
 6             ret.append([1])
 7             for j in range(1,i+1):
 8                 if j==i:
 9                     ret[i].append(1)
10                 else:
11                     ret[i].append(ret[i-1][j]+ret[i-1][j-1])
12         return ret

 

posted @ 2014-10-17 20:55  ZH奶酪  阅读(1671)  评论(0编辑  收藏  举报