用Java 实现矩阵转置,即将矩阵的行、列互换,一个m行n列的矩阵将转换为n 行m列
时间: 2024-10-29 19:12:05 浏览: 14
在Java中,可以使用二维数组(Array2D)来表示矩阵,并利用循环来完成矩阵转置的操作。下面是一个简单的示例,说明如何通过临时变量交换原矩阵的行和列:
```java
public class MatrixTranspose {
public static void transpose(int[][] matrix) {
int m = matrix.length; // 原矩阵的行数
int n = matrix[0].length; // 原矩阵的列数
// 创建一个新的n行m列的矩阵作为结果
int[][] transposedMatrix = new int[n][m];
// 遍历原矩阵并复制到新矩阵的对应位置
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
transposedMatrix[j][i] = matrix[i][j]; // 交换行和列的位置
}
}
// 打印转置后的矩阵
for (int[] row : transposedMatrix) {
System.out.println(Arrays.toString(row));
}
}
// 示例用法
public static void main(String[] args) {
int[][] originalMatrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
transpose(originalMatrix);
}
}
```
在这个例子中,`transpose`方法接收一个二维数组作为输入,创建一个新的转置矩阵,并按行打印出来。运行上述代码会得到原矩阵转置的结果。
阅读全文