【leetcode】118.(Easy)Pascal's Triangle
阿新 • • 發佈:2019-01-03
解題思路:
遞迴
時間複雜度:O(n) n是最終所有元素的個數和
提交程式碼:
class Solution {
public List<List<Integer>> generate(int numRows) {
List<List<Integer>> res=new ArrayList<List<Integer>>();
if(numRows==0) return res;
List<Integer> curRow=new ArrayList <Integer>();
curRow.add(1);
res.add(curRow);
addRow(numRows-1,curRow,res);
return res;
}
private void addRow(int numRows,List<Integer> parentRow,List<List<Integer>>res) {
if(numRows==0) return;
List<Integer> curRow=new ArrayList<>();
curRow.add(1);
for(int i=1;i<parentRow.size();i++)
curRow.add(parentRow.get(i-1)+parentRow.get(i));
curRow.add(1);
res.add(curRow);
addRow(numRows-1,curRow,res);
}
}
執行結果: