不用numpy實現矩陣轉置

2021-10-20 05:49:21 字數 1215 閱讀 7757

給你乙個二維整數陣列 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]]輸出:[[1

,4],

[2,5

],[3

,6]]

m == matrix.length

n == matrix[i].length

1 <= m, n <= 1000

1 <= m * n <= 105

-109 <= matrix[i][j] <= 109

python實現

def

transpose

(matrix)

-> list[list[

int]]:

row,col=

len(matrix)

,len

(matrix[0]

) new_matrix=

for j in

range

(col)

: row_=

for i in

range

(row)

:

[j])

return new_matrix

執行結果:通過

顯示詳情

執行用時:44 ms, 在所有 python3 提交中擊敗了96.86%的使用者

記憶體消耗:15.5 mb, 在所有 python3 提交中擊敗了9.95%的使用者

numpy 一維矩陣轉置問題

numpy中,我們如果直接對一維行矩陣轉置,會出現問題,以為 1 d array 的 shape 是 d,而不是 1,d 轉置後仍為 d,這時,可以採用 numpy.expand dims 函式對一維矩陣的 shape 進行操作,使其變成 1,d 示例d np.array 1 2,3 4 print...

python實現矩陣乘法 不用numpy

在不使用numpy庫的情況下實現矩陣乘法,看起來很簡單,但這之中也是存在坑的。比如如下 class mat mul def mm self,a,b row len len a column len len b 0 cross len len b res mat 0 column len row le...

Numpy陣列轉置

numpy陣列轉置很容易,兩種種寫法 np array np.array 1,2 3,4 np array.transpose np.transpose np array 但是一維陣列轉置的時候有個坑,光transpose沒有用,需要指定shape引數 array 1d np.array 1,2 p...