思路:
List有个get(i),函数,求的是list里面,下标为i的这个元素,注意这一点!很有用
此外,每一行的第一个与最后一个元素一定是1,不满足那个规则,所以说要单独处理
class Solution { public List<List<Integer>> generate(int numRows) { List<List<Integer>> res=new ArrayList<>(); if(numRows==0) return res; res.add(new ArrayList<>()); res.get(0).add(1);//第一个元素为1 for(int i=1;i<numRows;i++) { List<Integer> row=new ArrayList<>();//当前行 List<Integer> ans=res.get(i-1);//前一行 row.add(1);//每一行第一个元素一定是1 for(int j=1;j<i;j++) { row.add(ans.get(j)+ans.get(j-1));//这一行的元素,等于上一行,下标i,i-1的元素的和 } row.add(1);//每行最后一个元素一定是1, res.add(row); } return res; } }