帮忙求置换矩阵

来源:百度知道 编辑:UC知道 时间:2024/06/27 13:53:24
由于我不是一个学计算机的,看到网上有置换矩阵的代码也看不懂.小弟遇到一个九行九列的矩阵,求哪位高手帮我它的置换矩阵,矩阵如下第{[011000000],[100110000],[1000001100][010000011][001000000][001000000][000100000][000100000]}(每个中括号表示矩阵的一行.)求高手帮帮忙吧,万分感谢,关于置换矩阵算法的程序代码可参照http://zhidao.baidu.com/question/35023584.html?fr=qrl&fr2=query.
这是相关定义.交换单位矩阵I的第i行与第j行得到的矩阵称为交换矩阵.记为E(i,j ).若干个交换矩阵的乘积称为置换矩阵.对矩阵A的任一无关元集(其无关元个数记为 )必定存在转换矩阵 , 使得P1AP2=A'我们称 P1AP2是对A进行置换变换.

我用的是c语言,在VC++6.0里用这些代码就可以了

#include<stdlib.h>
#include<stdio.h>
main()
{
int a[40][40];
int m,n,tmp,length;
printf("Input a[][]\n\n");
printf("Length(<=40):");
scanf("%d",&length);/*矩阵维数*/
if(length>40)
{
printf("\nError!\nOut of bound!");
getch();
exit(1);
}
/*输入*/
printf("\nInput:\n\n");
for(m=0;m<length;m++)
{
for(n=0;n<length;n++)
{
printf("a[%d][%d]=",m,n);
scanf("%d",&a[m][n]);
}
printf("\n");
}
/*显示*/
printf("\na[%d