leetcode 867 轉置矩陣

2021-09-01 05:37:22 字數 1392 閱讀 8865

給定乙個矩陣a, 返回a的轉置矩陣。

矩陣的轉置是指將矩陣的主對角線翻轉,交換矩陣的行索引與列索引。

示例 1:

輸入:[[1,2,3],[4,5,6],[7,8,9]]輸出:[[1,4,7],[2,5,8],[3,6,9]]
示例 2:

輸入:[[1,2,3],[4,5,6]]輸出:[[1,4],[2,5],[3,6]]

1 <= a.length <= 10001 <= a[0].length <= 1000

**一:下面的**執行會出錯

class solution:

def transpose(self, a):

""":type a: list[list[int]]

:rtype: list[list[int]]

"""m=len(a)

n=len(a[0])

res = m*[n*[0]]

for i in range(n):

for j in range(m):

res[i][j]=a[j][i]

return res

'''執行錯誤,輸入a = [[1,2,3],[4,5,6],[7,8,9]]

輸出的是:[[3,6,9],[3,6,9],[3,6,9]]

'''

**一修改:

class solution:

def transpose(self, a):

""":type a: list[list[int]]

:rtype: list[list[int]]

"""m=len(a)

n=len(a[0])

#res = m*[n*[0]]

res=[[0 for i in range(m)] for j in range(n)]

for i in range(n):

for j in range(m):

res[i][j]=a[j][i]

return res

**三:利用高階函式

class solution:

def transpose(self, a):

""":type a: list[list[int]]

:rtype: list[list[int]]

"""return map(list,zip(*a))

LeetCode 867 轉置矩陣

給定乙個矩陣a,返回a的轉置矩陣。矩陣的轉置是指將矩陣的主對角線翻轉,交換矩陣的行索引與列索引。示例 1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,4,7 2,5,8 3,6,9 示例 2 輸入 1,2,3 4,5,6 輸出 1,4 2,5 3,6 1 a.length 10001 a 0...

Leetcode 867 轉置矩陣

一 題目描述 給定乙個矩陣 a,返回 a 的轉置矩陣。矩陣的轉置是指將矩陣的主對角線翻轉,交換矩陣的行索引與列索引。二 示例 示例1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,4,7 2,5,8 3,6,9 示例2 輸入 1,2,3 4,5,6 輸出 1,4 2,5 3,6 說明 三 思路...

leetcode 867 轉置矩陣

給你乙個二維整數陣列 matrix,返回 matrix 的 轉置矩陣 矩陣的 轉置 是指將矩陣的主對角線翻轉,交換矩陣的行索引與列索引。示例 1 輸入 matrix 1,2,3 4,5,6 7,8,9 輸出 1,4,7 2,5,8 3,6,9 示例 2 輸入 matrix 1,2,3 4,5,6 輸...