矩阵行列互换算法的实例要从一个简单的例子来归纳
[1,2,3]
[4,5,6]
[7,8,9]
——由———到—————》
[1,4,7]
[2,5,8]
[3,6,9]
由上面的单行到下面的单行,用矩阵行列互换算法来完成,关键是将索引交换后进行交换,对应交换后list1[i][j],list1[j][i]=list1[j][i],list1[i][j];每次开始交换的位置必须是对角线 for i in range(n):
for j in range(i,n):
n=4
k=1
list1=[]
for i in range(n):
tmp=[]
for i in range(n):
tmp.append(k)
k+=1
list1.append(tmp)
print(list1)
# 假的行列互换
list2=[]
for i in range(n):
tmp=[]
k=i+1
for i in range(n):
tmp.append(k)
k+=3
list2.append(tmp)
print(list2)
# 真的行列互换
for i in range(n):
for j in range(i,n):
list1[i][j],list1[j][i]=list1[j][i],list1[i][j]
print(list1)