程序在Python中查找给定矩阵的转置
假设我们有一个(n乘n)矩阵M,我们必须找到它的转置。众所周知,矩阵的转置会切换行索引和列索引。更正式地说,对于每个r和c,matrix[r][c]=matrix[c][r]。
所以,如果输入像
7
6
2
7
那么输出将是
5
3
为了解决这个问题,我们将遵循以下步骤-
M:=一个新列表
追踪器:=0
而跟踪器<矩阵的行数,执行
temp:=加入temp和带有元素行的列表[tracker]
temp:=一个新列表
对于矩阵中的每一行,执行
M:=M用temp元素加入另一个列表
追踪器:=追踪器+1
返回M
让我们看下面的实现以更好地理解-
示例
class Solution: def solve(self, matrix): M = [] tracker = 0 while tracker < len(matrix): temp = [] for row in matrix: temp += [row[tracker]] M += [temp] tracker += 1 return M ob = Solution() matrix = [ [7, 2, 6], [3, 7, 2], [5, 3, 7] ] print(ob.solve(matrix))
输入值
[[7, 2, 6], [3, 7, 2], [5, 3, 7]]
输出结果
[[7, 3, 5], [2, 7, 3],[6, 2, 7]]