1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1...........
这就是杨辉三角,我们今天就利用二维数组来实现 杨辉三角的打印
1.观察规律
第一层 1个数
第二层 2 个数
第n 层 n 个数
每层第一个数和最后一个数为1,
其余的为:上一行的同一列数+前一列数
2.规律对应代码实现
既然使用二维数组打印,那必然涉及打印二维数组的双重循环:
for (int i = 0;i < arr.length;i ++){ for (int j = 0;j < i+1;j++){ }}
下面就以外层循环的 i 和内层循环的 j 为参数,分析规律对应的代码实现
3.代码展示
public class YangHui {
public static void main(String[] args) {
int level = 10;//这里是层数,可以随意修改
int [][] arr = new int[level][];
for (int i = 0;i < arr.length;i ++){
arr[i] = new int[i+1];//为每一行分配空间,初始化二维数组中的一维数组
for (int j = 0;j < i+1;j++){
if (j == 0 || j == i){
arr[i][j] = 1;
}
else {
arr[i][j]=arr[i-1][j-1] + arr[i-1][j];
}
System.out.print(arr[i][j]+"\t");//输出
}
System.out.println();//换行
}
}
}
运行结果截图
====================================================================
有疑问的可以评论~!
求点赞~!