题目OJ链接:杨辉三角
【题目分析】杨辉三角的每一行的第一个数字和最后一个数字都是1,但是第一行只有一个数字1,所以我们可以单独拿出来。
【代码】
class Solution {
public List<List<Integer>> generate(int numRows) {
//先创建一个 List<List<Integer>>
List<List<Integer>> ret = new ArrayList<>();
//创建第一行
List<Integer> list1 = new ArrayList<>();
list1.add(1);
ret.add(list1);
//后面行数的
for(int i = 1;i < numRows;i++){
List<Integer> nextRow = new ArrayList<>();
//将第一个数字设置为1
nextRow.add(1);
//得到上一行
List<Integer> prevRow = ret.get(i-1);
for(int j = 1;j < i;j++){
int nums = prevRow.get(j)+prevRow.get(j-1);
nextRow.add(j,nums);
}
//将最后一个数字设置为1
nextRow.add(1);
ret.add(nextRow);
}
return ret;
}
}
【结果】