📅  最后修改于: 2023-12-03 15:28:48.674000             🧑  作者: Mango
这道题是一道关于矩阵的算法题,需要求出一个矩阵的转置矩阵。
给定一个 $n \times m$ 的矩阵 $A$,请你计算出它的转置矩阵 $B$。
即对于 $1 \leq i \leq n$ 和 $1 \leq j \leq m$,有 $b_{j,i}=a_{i,j}$。
输入:
2 3
1 2 3
4 5 6
输出:
1 4
2 5
3 6
对于一个给定的矩阵 $A$,它的转置矩阵 $B$ 就是 $A$ 沿主对角线翻转得到的矩阵。
具体地说,我们可以通过以下步骤得到 $B$:
下面是一份Python代码实现:
def transpose(matrix):
"""
Calculate the transpose matrix of the given matrix.
Args:
matrix: A list of lists representing a matrix.
Returns:
A list of lists representing the transpose matrix.
"""
# Get the number of rows and columns in the matrix.
rows = len(matrix)
cols = len(matrix[0])
# Initialize the transpose matrix with the correct dimensions.
transpose_matrix = [[0 for j in range(rows)] for i in range(cols)]
# Loop through the matrix and fill in the transpose matrix.
for i in range(rows):
for j in range(cols):
transpose_matrix[j][i] = matrix[i][j]
return transpose_matrix
这份代码定义了一个名为 transpose
的函数,接受一个矩阵作为输入,并返回该矩阵的转置矩阵。它包含了一个循环语句,遍历了输入矩阵中的每个元素,并将其放入正确的位置。