二维数组
数组的数组---二维数组的每一个元素是一个一维数组
二维数组的应用
二维数组的长度:数组名.length ---每个一维数组:数组名[下标].length
二维数组的遍历---两重for循环
for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length; j++){
System.out.println(arr[i][j]);
}
}
二维数组的反转---头尾交换
for(int start = 0, end = arr.length -1; start < end; start++,end--){
int[] temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}
从控制台输入行数,打印对应的杨辉三角
Scanner s = new Scanner(System.in);
int row = s.nextInt();
int[][] arr = new int[row][];
for(int i = 0; i < row; i++){
arr[i] = new int[i + 1];
for(int j = 0; j <= i; j++){
if(j == 0 || j == i){
arr[i][j] = 1;
} else {
arr[i][j] = arr[i -1][j] + arr[i - 1][j - 1];
}
System.out.print(arr[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
杨辉三角用二维数组的理解:
arr[i][j] = arr[i -1][j] + arr[i - 1][j - 1]