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

java算法练习----杨辉三角

程序员文章站 2024-02-21 12:50:36
...

又写了个算法题,著名的杨辉三角,哈哈,直接进入主题吧!

先给大家简单介绍一下吧: 杨辉三角的每个数等于它上方两数之和。

java算法练习----杨辉三角

在百度上找了张图给大家理解

大家可以自己分析一下,我直接上代码,在代码里面讲解


public class trangle {
 public static void main(String[] args) {

     int x=8;  //我们先定义8行的数组,这里可以随意设置哦
     int[][] arg=new int[x][x];//定义一个二维数组

     for(int i=0;i<x;i++) {   //i我们可以看做是每一行
         for(int k=1; k<=x-i;k++) {    //这里的k 是我们的空格  ,经过分析   空格数=总行数(x)-第几行(i),所以来个for循环
                System.out.print(" ");
            }
          for(int j=0;j<=i;j++) {       //j就是具体到每一行的,相当于坐标里面的y

              if (i==0||j==0||j==x) {    //判断如果在每一行的第一个数或者最后一个数都赋值为1(这个大家都能发现)
                      arg[i][j]=1;
            }else {
             arg[i][j]= arg[i-1][j-1] + arg[i-1][j];       //核心部分,相信大家看的懂
             System.out.print(" ");
          }
              System.out.print(arg[i][j]+"");
     }
     System.out.println();  //换行符
}
}
 }

OK了

相关标签: java 算法