自学内容网 自学内容网

Day4:杨辉三角

题目:给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数就是左上方和右上方数的和。

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static List<List<Integer>> generate(int numRows){
        List<List<Integer>> ret=new ArrayList<>();
        List<Integer> list0=new ArrayList<>();
        list0.add(1);
        ret.add(list0);
        for (int i=1;i<numRows;i++){
            List<Integer> curRow=new ArrayList<>();
            curRow.add(1);
            List<Integer> preRow=ret.get(i-1);
            for (int j=1;j<i;j++){
                int val1=preRow.get(j);
                int val2=preRow.get(j-1);
                curRow.add(val1+val2);
            }
            curRow.add(1);
            ret.add(curRow);
        }
        return ret;
    }
    public static void main(String[] args) {
        List<List<Integer>> ret=generate(4);
        for (int i=0;i<ret.size();i++){
            for (int j=0;j<ret.get(i).size();j++){
                System.out.print(ret.get(i).get(j)+" ");
            }
            System.out.println();
        }
    }
}

运行结果:

 

 

 


原文地址:https://blog.csdn.net/2301_80971489/article/details/142349403

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!