python设计一个函数,将一个m*n的二维矩阵的行与列的元素互换
时间: 2024-05-27 08:14:12 浏览: 85
def transpose(matrix):
"""
:type matrix: List[List[int]]
:rtype: List[List[int]]
"""
m = len(matrix)
n = len(matrix[0])
result = [[0] * m for _ in range(n)]
for i in range(m):
for j in range(n):
result[j][i] = matrix[i][j]
return result
# example
matrix = [[1, 2, 3], [4, 5, 6]]
print(transpose(matrix)) # [[1, 4], [2, 5], [3, 6]]
相关问题
设计一个函数,将一个m*n的二维矩阵的行与列的元素互换
以下是Python代码实现:
```python
def transpose_matrix(matrix):
m = len(matrix)
n = len(matrix[0])
transposed_matrix = [[0 for i in range(m)] for j in range(n)]
for i in range(m):
for j in range(n):
transposed_matrix[j][i] = matrix[i][j]
return transposed_matrix
```
该函数接受一个二维矩阵作为参数,并返回一个新的矩阵,新矩阵的行与列元素互换。在函数中,我们首先获取原矩阵的行数m和列数n,然后创建一个新矩阵transposed_matrix,其行数为n,列数为m。接下来,我们使用两个嵌套的循环遍历原矩阵中的所有元素,并将其赋值给新矩阵的相应位置。最后返回新矩阵即可。
、将一个二维数组行和列元素互换,存到另一个二维数组中。
好的,这个问题可以用以下的代码实现:
```python
def transpose_matrix(matrix):
# 获取矩阵的行数和列数
rows = len(matrix)
cols = len(matrix[0])
# 创建一个新的矩阵来存储转置后的结果
result = [[0 for _ in range(rows)] for _ in range(cols)]
# 将矩阵的行和列互换
for i in range(rows):
for j in range(cols):
result[j][i] = matrix[i][j]
return result
```
这个函数接受一个二维数组作为输入,然后创建一个新的矩阵来存储转置后的结果。然后通过两个嵌套的 for 循环,将输入矩阵的行和列互换,并将结果存储到新的矩阵中。最后将新矩阵返回即可。
例子:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
result = transpose_matrix(matrix)
print(result)
# Output: [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
```
这里我们传递了一个 3 x 3 的矩阵作为输入,函数将其转置为一个 3 x 3 的新矩阵并返回。
阅读全文