矩阵相乘的算法
2011-03-12 22:12
225 查看
row 是横向的, 排的意思 column 是纵向的, 列的意思
输入的a数组和b数组,c数组用于输出结果。ra 是 row a ca是column a
]public class MatrixMultiply { public static void main(String args[]) { int a[][] = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; int b[][] = { { 1, 5, 9 }, { 2, 6, 10 }, { 3, 7, 11 }, { 4, 8, 12 } }; int c[][] = new int[3][3]; matrixMultiply(a, b, c, 3, 4, 4, 3); for (int i = 0; i <= 2; i++) for (int j = 0; j <= 2; j++) System.out.println(c[i][j]); } public static void matrixMultiply(int[][] a, int[][] b, int[][] c, int ra, int ca, int rb, int cb) { if (ca != rb) // 不能乘,a行不等于b列 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; } } }[/code]
相关文章推荐
- C++中一些简单的数组算法(矩阵相乘) 第二篇
- 矩阵相乘算法的Java语言实现
- 蓝桥杯 算法提高 矩阵相乘
- 矩阵相乘的算法
- 名企笔试:搜狗2016研发工程师笔试(矩阵元素相乘)2017-03-13 算法爱好者
- Strassen 矩阵相乘算法(转)
- 矩阵相乘,快速算法 HDOJ 4291 A Short problem
- 两个二维矩阵相乘的算法
- 算法设计 矩阵相乘 java
- 蓝桥杯 ADV-208 算法提高 矩阵相乘
- 算法-蓝桥杯-算法提高 矩阵相乘 (C++)
- 矩阵相乘优化算法实现讲解
- 蓝桥杯 ADV-208 算法提高 矩阵相乘
- 矩阵链乘法求两矩阵相乘所需的最小次数(算法3.6&3.7)
- 矩阵相乘的算法
- 矩阵相乘的快速算法
- Conquer-Divide的经典例子之Strassen算法解决大型矩阵的相乘
- 算法系列:矩阵相乘算法的MapReduce实现
- 特斯拉森算法快速矩阵相乘算法
- 算法提高 矩阵相乘