1、将tri初始化为[1],当rowIndex=0时,return的结果是:1,而题目要求应该是:[1],故将tri初始化为[[1]],返回结果设置为tri[0]即可满足要求;

2、最开始第二层循环是从1到i进行遍历,这样就不好控制数据的更新,因为更新第j个数据要用到原tri行的第j-1个数据,而此时第j-1个数据已经在上一轮被更新;

3、为了解决2中的问题,将第二层循环修改为从i到1进行遍历就可以了(因为第一个元素始终为1就不需要更新了)

4、函数用法:range(start,end,step)

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

 

相关文章:

  • 2022-12-23
  • 2021-04-05
  • 2021-07-20
猜你喜欢
  • 2021-07-18
  • 2022-01-17
  • 2022-12-23
  • 2021-09-01
  • 2022-02-28
相关资源
相似解决方案