置换矩阵

矩阵,可以用二维数组表示出来

用二维数组的下标来显示矩阵如下:

1  2  3
4  5  6
7  8  9
原矩阵     
1   4  7
2   5  8
3   6  9
置换矩阵
[0][0] [0][1] [0][2]
[1][0] [1][1] [1][2]
[2][0] [2][1] [2][2]

 

[0][0] [0][1] [0][2]
[1][0]     
[2][0]  

     

[1][1] [1][2]
[2][1] [2][2]

行与列的对换,每次都需要在不同的起点开始,不然双双对换,等于没换。

以3×3的矩阵来说,需要交换2次,第一次交换,可以从【0】【0】开始,第二次交换则从【1】【1】开始。

复制代码
int a[3][3] = { 1,2,3,4,5,6,7,8,9 };
    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            printf("%3d", a[i][j]);
        }
        printf("\n");
    }
    printf("原矩阵\n");
这是打印原矩阵
复制代码
复制代码
for (int i = 0; i < 3; i++)
    {
        for (int j = i; j < 3; j++)
        {
            int t = a[j][i];
            a[j][i] = a[i][j];
            a[i][j] = t;
        }
    }
这是转换代码
复制代码

最后再打印一遍就ok了

 

 

posted @   不知名de菜鸟  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示