欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

杨辉三角

程序员文章站 2022-04-22 10:52:51
...

模型理解

建立具体事物跟抽象世界的联系(模型),然后通过计算机语言表现出来

1
1   1 
1   2   1
1   3   3   1
1   4   6   4   1  

通过对模型的观察,发现杨辉三角模型有以下两个特征:
1. 左边第一排全部为1,对角线全部为1
2. 中间某个数为左上角数和正上角数之和

大致思路

跟二维数组的模型相似,可以用数组来实现。

Java实现

二维数组 - {{},{},{}} , 说明已经初始化一维数组大小为3,第二维数组还未初始化,为null

    import java.util.Scanner;
    public class Test{
        //杨辉三角
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            int number = sc.nextInt();
                //初始化一个二维数组
            int[][] triangle = new int[number][];
            for(int i=0;i<triangle.length;i++){
                triangle[i] = new int[i+1];
                for(int j=0;j<triangle[i].length;j++){
                    if(i==0 || j==0 || i==j){//左边第一排全部为1,对角线全部为1 
                        triangle[i][j] = 1;
                    }else{
                        triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];//中间某个数为左上角数和正上角数之和
                    }
                    System.out.print(triangle[i][j]+"\t");
                }
                System.out.println();
            }
        }
    }

output
杨辉三角

相关标签: 算法 杨辉三角