Java程序查找矩阵的转置
要理解这个示例,你应该具备以下 Java 编程主题的知识:
矩阵的转置是将行和列交换的过程。对于 2x3
矩阵,
矩阵
a11 a12 a13
a21 a22 a23
转置矩阵
a11 a21
a12 a22
a13 a23
示例:程序求矩阵的转置
public class Transpose {
public static void main(String[] args) {
int row = 2, column = 3;
int[][] matrix = { {2, 3, 4}, {5, 6, 4} };
// 显示当前矩阵
display(matrix);
// 转置矩阵
int[][] transpose = new int[column][row];
for(int i = 0; i < row; i++) {
for (int j = 0; j < column; j++) {
transpose[j][i] = matrix[i][j];
}
}
// 显示转置后的矩阵
display(transpose);
}
public static void display(int[][] matrix) {
System.out.println("矩阵为:");
for(int[] row : matrix) {
for (int column : row) {
System.out.print(column + " ");
}
System.out.println();
}
}
}
输出
矩阵为:
2 3 4
5 6 4
矩阵为:
2 5
3 6
4 4
在上述程序中,display()
函数仅用于将矩阵的内容打印到屏幕上。
这里,给定的矩阵是 2x3
形式,即 row = 2
和 column = 3
。
对于转置后的矩阵,我们改变了转置的顺序为 3x2
,即 row = 3
和 column = 2
。所以我们有 transpose = int[column][row]
通过简单地将列和行互换,就可以计算出矩阵的转置:
transpose[j][i] = matrix[i][j];