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] ]
帕斯卡三角
找规律
1、第k层有k个元素
2、每层第一个元素及最后一个元素都是1
3、对于k(k>2)层第n(n>1&&n<k)个元素A[k][n],A[k][n]=A[k-1][n-1]+A[k-1][n]
代码如下:
public class Generate { public static void main(String[] args) { int numRows=3; Generate generate=new Generate(); System.out.print(generate.generate(numRows)+"\n"); } public List<List<Integer>> generate(int numRows) { List<List<Integer>> allrows = new ArrayList<List<Integer>>(); ArrayList<Integer> row = new ArrayList<Integer>(); for(int i=0;i<numRows;i++) { row.add(0, 1); for(int j=1;j<row.size()-1;j++) row.set(j, row.get(j)+row.get(j+1)); allrows.add(new ArrayList<Integer>(row)); } return allrows; } }