118. Pascal's Triangle(暴力求解法)

2019-03-14 13:02:57 浏览数 (3)

Pascal's Triangle

【题目】

Given a non-negative integer numRows, generate the first numRows of Pascal's triangle.

(翻译:给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。)

In Pascal's triangle, each number is the sum of the two numbers directly above it.

(在杨辉三角中,每个数是它左上方和右上方的数的和。)

Example:

代码语言:javascript复制
Input: 5
Output:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

【分析】

ArrayList 暴力求解,Java实现代码如下:

代码语言:javascript复制
class Solution {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> res = new ArrayList<>();
        if (numRows <= 0) return res;
        List<Integer> list = new ArrayList<>();
        for (int i = 1; i <= numRows; i  ) {
            list.add(1);
            for (int j = list.size() - 2; j > 0; j--) {
                list.set(j, list.get(j)   list.get(j - 1));
            }
            res.add(new ArrayList<>(list));
        }
        return res;
    }
}

0 人点赞