33 lines
711 B
Python
33 lines
711 B
Python
|
|
from typing import List
|
|
"""
|
|
Transpose a given matrix.
|
|
Args:
|
|
M (List[List]): A 2D list representing the matrix to be transposed.
|
|
Returns:
|
|
List[List]: The transposed matrix.
|
|
Example:
|
|
>>> matrix = [
|
|
... [1, 2, 3],
|
|
... [4, 5, 6]
|
|
... ]
|
|
>>> matrix_transpose(matrix)
|
|
[[1, 4], [2, 5], [3, 6]]
|
|
|
|
NOTE: If you import the matrix_transpose module into your project, call it with matrix_transpose.transpose(M).
|
|
|
|
"""
|
|
|
|
def transpose(M) -> List[List]:
|
|
row = []
|
|
T = []
|
|
mcols = len(M[0])
|
|
nrows = len(M)
|
|
for i in range(0, mcols):
|
|
for j in range(0, nrows):
|
|
row.append(M[j][i])
|
|
T.append(row)
|
|
row = []
|
|
return T
|
|
|