📄 matrixmultiply.java
字号:
public class MatrixMultiply {
/* 计算2个矩阵乘积的标准算法,即计算 c=a*b
* 输入参数说明: ra--矩阵a的行数 ca--矩阵a的列数
* rb--矩阵b的行数 cb--矩阵b的列数 */
public static void matrixMultiply(int [][]a, int [][]b, int [][]c,
int ra, int ca, int rb,int cb)
{
if (ca!=rb)
throw new IllegalArgumentException("矩阵不可乘");
for (int i=0;i<ra;i++)
for (int j=0;j<cb;j++) {
int sum=a[i][0]*b[0][j];
for (int k=1;k<ca;k++)
sum+=a[i][k]*b[k][j];
c[i][j]=sum;
}
}
public static void main(String[] args)
{
/* 矩阵a,b,c初始化 */
int [][]a=new int[][]{{1,0,1},{2,3,0},{4,5,1},{-1,7,-4}};
int [][]b=new int[][]{{1,0},{2,3},{4,5}};
int [][]c=new int[4][2];
int ra=4,ca=3,rb=3,cb=2;
/* 计算c=a*b */
matrixMultiply(a,b,c,ra,ca,rb,cb);
/* 输出矩阵c */
for (int i=0;i<ra;i++)
{
for (int j=0;j<cb;j++)
{
System.out.print(c[i][j]);
System.out.print(" ");
}
System.out.println();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -