任务描述
本关任务:对给定的矩阵做转置操作。 什么是矩阵:矩阵是一个由 m 行(row)n 列(column)元素排列成的矩形阵列,以下是一个 2 行 3 列的矩阵:
[12095−13−6]
什么是矩阵转置:矩阵中的每个数可用第 i 行第 j 列来表示,比如以上矩阵中的 9 可表示为A12,矩阵的转置就是把矩阵中所有元素的行列值交换,矩阵中的 9 通过转置后就变成了A21。整个矩阵转置后数据如下:
⎣⎢⎡19−132056⎦⎥⎤
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 间编写程序代码,转置以下矩阵,并输出转置后的结果,输出二维数组时注意数组中的每行数字之间用空格分开,每行中最后一个数字后面也要有一个空格。。 给定矩阵如下:
5 6 7
15 65 43
32 43 22
11 88 6
4 98 66
public class Transpose { public static void main(String[] args) { // 请在Begin-End间编写代码 /********** Begin **********/ // 定义二维数组并初始化 int[][] array = new int[][]{{5,6,7},{15,65,43},{32,43,22},{11,88,6},{4,98,66}}; // 定义转置后的新数组 int x = array.length; int y = array[0].length; int[][] array1 = new int[y][x]; // 转置数组 for (int i = 0;i < array.length; i ++){ for (int j = 0;j < array[i].length;j ++){ array1[j][i] = array[i][j]; } } // 打印新数组 for (int i = 0;i < y;i ++){ for (int j = 0;j < x;j ++){ System.out.print(array1[i][j] + " "); } System.out.println(); } /********** End **********/ } }