难度: 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)]