Java实现矩阵运算——矩阵乘法、矩阵转置、自动填充矩阵行

      在做大数据或人工智能开发的过程做难免会遇到矩阵运算,本文在这里给大家实现一个简单的矩阵运算,请看下代码:

package test;

/**
 * 矩阵运算
 * 
 * @author Administrator
 *
 */
public class MatrixOperation {
	/**
	 * 自动填充矩阵,将不足的行后自动补0
	 * 
	 * @param M
	 * @return
	 */
	public static int[][] fillMatrix(int[][] M) {
		int ml = 0;// 最长行
		for (int i = 0; i < M.length; i++) {
			ml = ml < M[i].length ? M[i].length : ml;
		}
		int Nm[][] = new int[M.length][ml];
		for (int i = 0; i < M.length; i++) {
			for (int j = 0; j < M[i].length; j++) {
				Nm[i][j] = M[i][j];
			}
		}
		return Nm;
	}

	/**
	 * 矩阵乘法A*B
	 * 
	 * @param A
	 * @param B
	 * @return
	 * @throws Exception
	 */
	public static int[][] multiplication(int[][] A, int[][] B) throws Exception {
		// 先判断A矩阵的列是否等于B矩阵的行,A矩阵与B矩阵可以进行乘法运算的条件就是A的列数等于B的行数
		A = fillMatrix(A);
		B = fillMatrix(B);
		if (A[0]
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 黑客帝国 设计师:白松林 返回首页