forked from fishercoder1534/Leetcode
-
Notifications
You must be signed in to change notification settings - Fork 8
/
_118.java
45 lines (38 loc) · 989 Bytes
/
_118.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.fishercoder.solutions;
import java.util.ArrayList;
import java.util.List;
/**
* 118. Pascal's Triangle
* 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 class _118 {
public List<List<Integer>> generate(int numRows) {
List<List<Integer>> result = new ArrayList();
int len = 1;
for (int i = 0; i < numRows; i++) {
List<Integer> row = new ArrayList(len);
row.add(1);
if (i > 0) {
List<Integer> lastRow = result.get(i - 1);
for (int j = 1; j < len; j++) {
if (j < lastRow.size()) {
row.add(lastRow.get(j - 1) + lastRow.get(j));
}
}
row.add(1);
}
result.add(row);
len++;
}
return result;
}
}