心法领悟034:Java二维数组可以不等长。
Java语言中的二维数组其实是一维数组的每个元素都是另一个一维数组,所以第二维数组的长度可以任意。
就像本实例中的那样。这比其他语言的数组更灵活,而且多维数组也是如此。
定义:杨辉三角形由数字排列组成,可以把它看做一个数字表,其基本特性是两侧数值均为1,其他位置的数值是其正上方的数值与左上角数值之和。
/**
* @author 李钟尉
*
*/
public class YanghuiTriangle {
public static void main(String[] args) {
int triangle[][]=new int[8][];// 创建二维数组
// 遍历二维数组的第一层
for (int i = 0; i < triangle.length; i++) {
triangle[i]=new int[i+1];// 初始化第二层数组的大小
// 遍历第二层数组
for(int j=0;j<=triangle[i].length-1;j++){
// 将两侧的数组元素赋值为1
if(i==0||j==0||j==triangle[i].length-1){
triangle[i][j]=1;
}else{// 其它数值通过公式计算
triangle[i][j]=triangle[i-1][j]+triangle[i-1][j-1];
}
// 输出数组元素
System.out.print(triangle[i][j]+"\t");
}
System.out.println();
}
}
}
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1