Pascal's Triangle

来源:互联网 发布:根据域名添加路由设置 编辑:程序博客网 时间:2024/06/17 11:44

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]]

易错点: pre 的时候要判断 i > 0

public class Solution {    public List<List<Integer>> generate(int numRows) {        List<List<Integer>> ret = new ArrayList<List<Integer>>();        if(numRows < 1)            return ret;        List<Integer> first = new ArrayList<Integer>();        first.add(1);        ret.add(first);        for(int i = 1; i < numRows; i++){            List<Integer> cur = new ArrayList<Integer>();            List<Integer> pre = ret.get(i - 1);            for(int j = 0; j <=  i; j++){                if(j == 0 || j == i){                    cur.add(1);                    continue;                }                cur.add(pre.get(j - 1) + pre.get(j));            }            ret.add(cur);        }        return ret;    }}


0 0
原创粉丝点击