LeetCode 118 - Pascal's Triangle

932 ワード

Given numRows, generate the first numRows of Pascal's triangle.
For example, given numRows = 5,Return
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]
public List<List<Integer>> generate(int numRows) {
    List<List<Integer>> result = new ArrayList<>();
    if(numRows == 0) return result;
    List<Integer> row = new ArrayList<>();
    row.add(1);
    result.add(row);
    for(int i=1; i<numRows; i++) {
        List<Integer> prev = result.get(i-1);
        row = new ArrayList<>();
        row.add(1);
        for(int j=1; j<i; j++) {
            row.add(prev.get(j)+prev.get(j-1));
        }
        row.add(1);
        result.add(row);
    }
    return result;
}