leetcode 867. Transpose Matrix( Python )

497 阅读20分钟

描述

Given a matrix A, return the transpose of A.

The transpose of a matrix is the matrix flipped over it's main diagonal, switching the row and column indices of the matrix. Example 1:

Input: [[1,2,3],[4,5,6],[7,8,9]]
Output: [[1,4,7],[2,5,8],[3,6,9]]

Example 2:

Input: [[1,2,3],[4,5,6]]
Output: [[1,4],[2,5],[3,6]]

Note:

1 <= A.length <= 1000
1 <= A[0].length <= 1000

解析

根据题意可以用到 Python 中的 zip 函数,直接就可计算出答案。时间复杂度为 O(R*C),R 和 C 分别是行数和列数, 空间复杂度为 O(R*C),主要是用于保存返回值。

解答

class Solution(object):
def transpose(self, A):
    """
    :type A: List[List[int]]
    :rtype: List[List[int]]
    """
    return zip(*A)

   
    
    

运行结果

Runtime: 44 ms, faster than 100.00% of Python online submissions for Transpose Matrix.
Memory Usage: 12.4 MB, less than 17.73% of Python online submissions for Transpose Matrix.
感谢支持 支付宝

支付宝

微信

微信