程序在Python中查找给定矩阵的转置

假设我们有一个(n乘n)矩阵M,我们必须找到它的转置。众所周知,矩阵的转置会切换行索引和列索引。更正式地说,对于每个r和c,matrix [r] [c] = matrix [c] [r]。

所以,如果输入像

726
372
537

那么输出将是

735
273
627

为了解决这个问题,我们将遵循以下步骤-

  • 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]]
    猜你喜欢