zoukankan      html  css  js  c++  java
  • 矩阵的乘法

    定义

    image-20201220001448657

    注意,上面的图片中,(A_{m imes s})(B_{s imes n})(C) 中最后一行的第 2 个数的下标右一点小错误,不过,无伤大雅。

    java 代码实现:

    /**
     * 求解矩阵的乘法
     * @param m1 矩阵,格式为 m 行乘以 s 列
     * @param m2 矩阵,格式为 s 行乘以 n 列
     * @return 一个 m 乘以 n 的矩阵
     */
    public int[][] multiMatrix(int[][] m1, int[][] m2) {
        int[][] res = new int[m1.length][m2[0].length];
        for (int i = 0; i < m1.length; i++) {
            for (int j = 0; j < m2[0].length; j++) {
                for (int k = 0; k < m2.length; k++) {
                    res[i][j] += m1[i][k] * m2[k][j];
                }
            }
        }
        return res;
    }
    

    测试:

    public static void main(String[] args) {
        Matrix matrix = new Matrix();
        int[][] m1 = {{4, 3, 1},
                      {2, 1, 3},
                      {3, 1, 2}};
        int[][] m2 = {{2,2},
                      {1,3},
                      {0,1}};
        int[][] res = matrix.multiMatrix(m1, m2);
        for (int i = 0; i < res.length; i++) {
            for (int j = 0; j < res[0].length; j++) {
                System.out.print(res[i][j] + " ");
            }
            System.out.println();
        }
    }
    

    输出结果:

    11 18
    5 10
    7 11

    上面的测试用例对应下面的示例:

    image-20201220011939298

    方阵的乘幂

    image-20201220020132023

    注意,我们平时说的矩阵的乘幂,是特指方阵的乘幂。

  • 相关阅读:
    vue登录
    登录vue
    FoolWeb Logo
    无限极下拉列表管理
    qtip2 扩展.net mvc 默认验证样式
    编辑器上传提交不能过.net 安全验证的解决方案
    FoolWeb 各层代码实例
    iis7 上传大文件那点事
    js制作 电子杂志(附源代码)
    FoolWeb (二) 数据库设计
  • 原文地址:https://www.cnblogs.com/fanlumaster/p/14162366.html
Copyright © 2011-2022 走看看