又写了个算法题,著名的杨辉三角,哈哈,直接进入主题吧!
先给大家简单介绍一下吧: 杨辉三角的每个数等于它上方两数之和。
在百度上找了张图给大家理解
大家可以自己分析一下,我直接上代码,在代码里面讲解
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
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了
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/qq_36547531/article/details/82151987