# 867. Transpose Matrix

**<font color=red>难度: Easy</font>**

## 刷题内容

> 原题连接

* https://leetcode.com/problems/transpose-matrix/

> 内容描述

```
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%

```python
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%

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