天天看点

java二维矩阵怎么进行转置_实现二维列表(矩阵)的转置

如下问题:

[[1,2,3], [4,5,6], [7,8,9]]

[[1,4,7], [2,5,8], [3,6,9]]

在数学上,矩阵是指纵横排列的二维数据表格,在Python中我们可以用二维列表表示矩阵,那么我们如何实现矩阵的转置呢?

简单观察,我们可以发现矩阵转置之后,索引位置发生了变化,那么具体变化是什么呢?我们可以写出来:

[0][0]	[0][0]              [1][0]   [0][1]               [2][0]   [0][2]        
[0][1]-->[1][0]             [1][1]-->[1][1]               [2][1]-->[1][2]
[0][2]	[2][0]              [1][2]   [2][1]               [2][2]   [2][2]
           

这样看,它们之间的规律就显而易见了。我们可以创建一个和它同级的代码实现转置,代码如下:

List1=[[1,2,3],[4,5,6],[7,8,9]]
List2=[[0,0,0],[0,0,0],[0,0,0]]
for i in range(3):
    for j in range(3):
        List2[i][j]=List1[j][i]
print(List2)
           

怎么样,是不是很简单?