从第3行开始,每行的第i个数,等于上一行i+i-1

public List<List<Integer>> Pascal(int numsRow){
  List<List<Integer>> res = new ArrayList<List<Integer>>();
    if(numsRow==0)
     return res;
   for(int j = 0; j<numsRow;j++){
    List<Integer> row = new ArrayList<Integer>();
    row.add(1);
    for(int i=1;i<j;i++){//除去第一行和第二行才进这个循环
      List<Integer> pre = res.get(j-1);//get prev row
      int temp = pre.get(i) + pre.get(i-1);
      row.add(temp);
  } 
      if(j!=0)//除了第一行,末尾接个1
     row.add(1);
     res.add(row);
    }
  return res;
}

results matching ""

    No results matching ""