杨辉三角(数据结构)

2024-01-23 08:58:54 浏览数 (1)

代码语言:javascript复制
public List<List<Integer>> generate(int numRows) {
        //定义一个二维数组
        List<List<Integer>> ret = new ArrayList<>();

        List<Integer> list = new ArrayList<>();
        //第一行
        list.add(1);
        ret.add(list);
        //每执行一次就是一行
        for(int i = 1; i < numRows; i  ) {
            List<Integer> curRow = new ArrayList<>();
            curRow.add(1);//每一行的第一个元素

            //处理中间的数
            List<Integer> prevRow = ret.get(i-1);
            for(int j = 1; j < i; j  ) {
                int x = prevRow.get(j)   prevRow.get(j - 1);
                curRow.add(x);
            }
            //最后一个元素
            curRow.add(1);

            ret.add(curRow);
        }
        return ret;

    }

0 人点赞