packagecom.liuzhen.dac;public classMatrix {//初始化一个随机nxn阶矩阵
public static int[][] initializationMatrix(intn){int[][] result = new int[n][n];for(int i = 0;i < n;i++){for(int j = 0;j < n;j++){
result[i][j]= (int)(Math.random()*10); //采用随机函数随机生成1~10之间的数
}
}returnresult;
}//蛮力法求解两个nxn和nxn阶矩阵相乘
public static int[][] BruteForce(int[][] p,int[][] q,intn){int[][] result = new int[n][n];for(int i=0;i
result[i][j]= 0;for(int k=0;k
result[i][j]+= p[i][k]*q[k][j];
}
}
}returnresult;
}//分治法求解两个nxn和nxn阶矩阵相乘
public static int[][] DivideAndConquer(int[][] p,int[][] q,intn){int[][] result = new int[n][n];//当n为2时,返回矩阵相乘结果
if(n == 2){
result=BruteForce(p,q,n);returnresult;
}//当n大于3时,采用采用分治法,递归求最终结果
if(n >