118. 杨辉三角Leetcode

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

 

示例:

输入: 5
输出:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]
/*
思路:
这是一道找规律题
1、第一行有一个数,第n行有n个数
2、用i控制行,j输出每行的每一个数
*/

class Solution {
    public List> generate(int numRows) {
        
        List> res = new ArrayList<>();
        
        if(numRows <= 0) return res;
                
        for(int i = 0; i < numRows; i++){
            List list = new ArrayList<>();
            for(int j = 0; j <= i; j++){
                if(j == 0 || j == i){
                    list.add(1);
                }else{
                    list.add(res.get(i-1).get(j) + res.get(i-1).get(j-1));
                }
            }
            res.add(list);
        }
        
        return res;
    }
}

你可能感兴趣的:(集合,Leetcode)