Skip to content

Latest commit

 

History

History
70 lines (48 loc) · 1.26 KB

0867._transpose_matrix.md

File metadata and controls

70 lines (48 loc) · 1.26 KB

867. Transpose Matrix

难度: Easy

刷题内容

原题连接

内容描述

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]]

解题方案

思路1 - 时间复杂度: O(row * col)- 空间复杂度: O(row * col)******

beats 98.09%

class Solution:
    def transpose(self, A):
        """
        :type A: List[List[int]]
        :rtype: List[List[int]]
        """
        row = len(A)
        col = len(A[0]) if row else 0
        res = [[0] * row for j in range(col)]
        
        for i in range(row):
            for j in range(col):
                res[j][i] = A[i][j]

        return res

思路2 - 时间复杂度: O(row * col)- 空间复杂度: O(row * col)******

一行

beats 77.71%

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