Strassen 矩阵算法 Java 实现

来源:百度知道 编辑:UC知道 时间:2024/05/10 09:00:22
求一个 Strassen 矩阵算法 Java 的源程序 谢谢大家了!我自己调了半天也调不出来 =。=
用分治法 解决 就是分成 n/2 的小矩阵

回答的好 还有加分~~哦

算法如下:

//STRASSEN矩阵算法
#include <iostream.h>
const int N=8; //常量N用来定义矩阵的大小

void main()
{

void STRASSEN(int n,float A[][N],float B[][N],float C[][N]);
void input(int n,float p[][N]);
void output(int n,float C[][N]); //函数声明部分

float A[N][N],B[N][N],C[N][N]; //定义三个矩阵A,B,C

cout<<"现在录入矩阵A[N][N]:"<<endl<<endl;
input(N,A);
cout<<endl<<"现在录入矩阵B[N][N]:"<<endl<<endl;
input(N,B); //录入数组

STRASSEN(N,A,B,C); //调用STRASSEN函数计算

output(N,C); //输出计算结果
}

void input(int n,float p[][N]) //矩阵输入函数
{
int i,j;

for(i=0;i<n;i++)
{
cout<<"请输入第"<<i+1<<"行"<<endl;
for(j=0;j<n;j++)
cin>>p[i][j];