java 矩阵 华为笔试
时间: 2023-08-17 18:03:06 浏览: 199
华为笔试中关于Java矩阵的问题有很多,我会选择其中的一个进行回答。假设题目为求矩阵的转置。
矩阵的转置是将矩阵的行列互换得到的新矩阵。
我们可以通过以下步骤来实现矩阵的转置:
1. 创建一个新的二维数组transposedMatrix,行数和列数与原始矩阵的列数和行数相同。
2. 使用两层循环遍历原始矩阵的所有元素,外层循环控制原始矩阵的行,内层循环控制原始矩阵的列。
3. 在内层循环中,将原始矩阵的元素复制到转置矩阵的对应位置。即,将原始矩阵的第i行第j列元素复制到转置矩阵的第j行第i列元素(即transposedMatrix[j][i])。
4. 遍历完成后,返回转置矩阵transposedMatrix。
代码示例如下:
```
public class MatrixTranspose {
public static int[][] transpose(int[][] matrix) {
int rows = matrix.length;
int columns = matrix[0].length;
int[][] transposedMatrix = new int[columns][rows]; // 创建新的转置矩阵
for (int i = 0; i < rows; i++) {
for (int j = 0; j < columns; j++) {
transposedMatrix[j][i] = matrix[i][j]; // 复制元素到转置矩阵
}
}
return transposedMatrix; // 返回转置矩阵
}
public static void main(String[] args) {
int[][] matrix = {{1, 2, 3}, {4, 5, 6}};
int[][] transposedMatrix = transpose(matrix);
System.out.println("原始矩阵:");
for (int[] row : matrix) {
for (int element : row) {
System.out.print(element + " ");
}
System.out.println();
}
System.out.println("转置矩阵:");
for (int[] row : transposedMatrix) {
for (int element : row) {
System.out.print(element + " ");
}
System.out.println();
}
}
}
```
这段代码实现了矩阵的转置,并在控制台上打印出原始矩阵和转置矩阵。运行结果如下:
原始矩阵:
1 2 3
4 5 6
转置矩阵:
1 4
2 5
3 6
以上就是对华为笔试题中Java矩阵转置问题的回答。
阅读全文