设 A 为 m×n 阶矩阵(即 m 行 n 列的矩阵),其第 i 行第 j 列的元素是 a(i, j),即 A=a(i, j)m×n。定义 A 的转置为这样一个 n×m 阶矩阵 B,满足 B=a(j,i)n×m,即 b(i, j)=a(j, i)(B 的第 i 行第 j 列元素是 A 的第 j 行第 i 列元素)。
假设有如下的矩阵 A:
n[0][0] 1 |
n[0][1] 2 |
n[0][2] 3 |
n[1][0] 4 |
n[1][1] 5 |
n[1][2] 6 |
n[2][0] 7 |
n[2][1] 8 |
n[2][2] 9 |
n[0][0] 1 |
n[0][1] 4 |
n[0][2] 7 |
n[1][0] 2 |
n[1][1] 5 |
n[1][2] 8 |
n[2][0] 3 |
n[2][1] 6 |
n[2][2] 9 |
if __name__ == "__main__": n = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print("原始矩阵:") for i in range(3): for j in range(3): print("%d " %(n[i][j]), end=" ") # 输出原始矩阵 print() for i in range(3): for j in range(3): #将主对角线右上方的数组元素与主对角线左下方的数组元素进行单方向交换 if j > i: temp = n[i][j] n[i][j] = n[j][i] n[j][i] = temp print("转置矩阵:") for i in range(3): for j in range(3): print("%d " %(n[i][j]), end=" ") print()运行结果为:
原始矩阵:
1 2 3
4 5 6
7 8 9
转置矩阵:
1 4 7
2 5 8
3 6 9
本文链接:http://task.lmcjl.com/news/6401.html