zoukankan      html  css  js  c++  java
  • 学习笔记——矩阵(1) 02.15

    由 m × n 个数aij排成的m行n列的数表称为m行n列的矩阵,简称m × n矩阵。记作:

     
     
    这m×n 个数称为矩阵A的元素,简称为元,数aij位于矩阵A的第i行第j列,称为矩阵A的(i,j)元,以数 aij为(i,j)元的矩阵可记为(aij)或(aij)m × n,m×n矩阵A也记作Amn
     

    加法

     
    矩阵的加法满足下列运算律(A,B,C都是同型矩阵):
     
     
     
    应该注意的是只有同型矩阵之间才可以进行加法

    减法

    数乘

     
    矩阵的数乘满足以下运算律:
     
     
     
     
    矩阵的加减法和矩阵的数乘合称矩阵的线性运算

    乘法

    两个矩阵的乘法仅当第一个矩阵A的列数和另一个矩阵B的行数相等时才能定义。如A是m×n矩阵和B是n×p矩阵,它们的乘积C是一个m×p矩阵  
    ,它的一个元素:
    并将此乘积记为:
     
      
     
    例如:
     
     
    矩阵的乘法满足以下运算律:
     
    结合律:
     
     
     
    左分配律:
     
     
     
    右分配律:
     
     
     
    矩阵乘法不满足交换律。
     
    定义矩阵重载运算符代码:
    const int MAXN=1010;
    const int MAXM=1010;
    struct Matrix{
        int n,m;
        int a[MAXN][MAXM];
        void clear(){
            n=m=0;
            memset(a,0,sizeof(a));
        }
        Matrix operator +(const Matrix &b) const{
            Matrix tmp;
            tmp.n=n;tmp.m=m;
            for(int i=0;i<n;++i)
                for(int j=0;j<m;++j)
                    tmp.a[i][j]=a[i][j]+b.a[i][j];
            return tmp;
        }
        Matrix operator -(const Matrix &b) const{
            Matrix tmp;
            tmp.n=n;tmp.m=m;
            for(int i=0;i<n;++i)
                for(int j=0;j<m;++j)
                    tmp.a[i][j]=a[i][j]-b.a[i][j];
            return tmp;
        }
        Matrix operator *(const Matrix &b) const{
            Matrix tmp;
            tmp.clear();
            tmp.n=n;tmp.m=m;
            for(int i=0;i<n;i++)
                for(int j=0;j<b.m;j++)
                    for(int k=0;k<m;k++)
                        tmp.a[i][j]+=a[i][k]*b.a[k][j];
            return tmp;
        }
    };
  • 相关阅读:
    关于字符的C++函数
    VC6 LINK : fatal error LNK1168: cannot open Debug/Test.exe for writing
    1019 数字黑洞 (20)
    1015 德才论 (25)
    1013 数素数 (20)(20 分)
    1003 我要通过!(20)(20 分)
    今日目标
    MySQL单列索引和组合索引的区别
    Struts2中过滤器和拦截器的区别
    SQL 统计 字段 竖向转横向 (行转列)显示
  • 原文地址:https://www.cnblogs.com/JimmyC/p/6403420.html
Copyright © 2011-2022 走看看