118.Pascal's Triangle

Posted 二十年后20

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了118.Pascal's Triangle相关的知识,希望对你有一定的参考价值。

题目链接:https://leetcode.com/problems/pascals-triangle/description/

题目大意:给出杨辉三角的行数,打印其杨辉三角。例子如下:

法一:直接模拟(传说这就是dp),杨辉三角的规律是:每个数都是其上两个元素的和。注意内层的list在每一次for循环后需要清空数值,其清空方法可以有clear()和removeAll(),但我都没有成功,所以我采用了直接new的办法。代码如下(耗时1ms):

 1     public List<List<Integer>> generate(int numRows) {
 2         List<List<Integer>> list = new ArrayList<List<Integer>>();
 3         for(int i = 1; i <= numRows; i++) {
 4             List<Integer> listIn = new ArrayList<Integer>();
 5             for(int j = 0; j < i; j++) {
 6                 if(j == 0 || j == i - 1) {
 7                     listIn.add(1);
 8                 }
 9                 else {
10                     listIn.add(list.get(i-2).get(j-1) + list.get(i-2).get(j));
11                 }
12             }
13             list.add(listIn);
14         }
15         return list;
16     }
View Code

 

以上是关于118.Pascal's Triangle的主要内容,如果未能解决你的问题,请参考以下文章

118. Pascal's Triangle@python

118. Pascal's Triangle

LeetCode_118. Pascal's Triangle

118. Pascal's Triangle

118. Pascal's Triangle

118. Pascal's Triangle