股票代码:834293
当前位置: 首页 >环保>通风设备>排烟风机 >包邮鸿冠HF-100S 4寸吊顶管道风机

包邮鸿冠HF-100S 4寸吊顶管道风机

价格
起批量
208.00
1
商品货号
8648353
物流
广东 深圳市  
x
北京 天津 上海 重庆 河北 辽宁 黑龙江 吉林 山东 山西 安徽 浙江 江苏 江西 广东 福建 海南 河南 湖北 湖南 四川 云南 贵州 陕西 甘肃 青海 宁夏 内蒙古 广西 西藏 新疆 香港 澳门 台湾
请选择省份
标准价 :
¥208.00
支付方式
保障服务
订购数量 :
起订量 (台) 标准价 采购量 是否有货
≥0¥208.00
有货
总价
208.00

包邮鸿冠HF-100S 4寸吊顶管道风机静音洗手间厨房排风换气扇现货






























































































































































































矩阵乘法

 编辑
矩阵相乘最重要的方法是一般矩阵乘积。它只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有意义[1]  。一般单指矩阵乘积时,指的便是一般矩阵乘积。一个m?n的矩阵就是m?n个数排成m行n列的一个数阵。由于它把许多数据紧凑的集中到了一起,所以有时候可以简便地表示一些复杂的模型。
中文名矩阵乘法外文名Matrix multiplication基本性质结合性 等应用学科数学,工程学,信息学应用领域代数,离散

目录

  1. ? 定义
  2. ? 注意事项
  3. ? 基本性质
  4. ? Hadamard乘积
  5. ? Kronecker乘积
  1. 1 实现
  2. ? C 代码
  3. 2 实际应用
  4. ? 数据统计
  1. ? VOJ1067
  2. ? 经典题目9
  3. ? 经典题目10
  4. ? 矩阵乘法例题

定义

A
  
的矩阵,B
  
的矩阵,那么称
  
的矩阵C为矩阵AB的乘积,记作
  
,其中矩阵C中的第
 
行第
  
列元素可以表示为:
如下所示:

注意事项

当矩阵A的列数等于矩阵B的行数时,A与B可以相乘。
  1. 矩阵C的行数等于矩阵A的行数,C的列数等于B的列数。
  2. 乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。

基本性质

  1. 乘法结合律: (AB)C=A(BC).[2] 
  2. 乘法左分配律:(A B)C=AC BC[2] 
  3. 乘法右分配律:C(A B)=CA CB[2] 
  4. 对数乘的结合性k(AB)=(kA)B=A(kB).
  5. 转置 (AB)T=BTAT.
  6. 矩阵乘法一般不满足交换律[3]  。

Hadamard乘积

 
矩阵
  
  
矩阵
  
的Hadamard积记为
  
。其元素定义为两个矩阵对应元素的乘积
  
m?n矩阵[2]  。例如,

Kronecker乘积

Kronecker积是两个任意大小的矩阵间的运算,表示为
  
。克罗内克积也成为直积或张量积[4]  .以德国数学家利奥波德?克罗内克命名。计算过程如下例所示:

实现

编辑

C 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
struct Matrix:vector<vector<int> >//使用标准容器vector做基类,需#include语句
{
    Matrix(int x=0,int y=0,int z=0)//初始化,默认为0行0列空矩阵
    {
        assign(x,vector<int>(y,z));
    }
    int h_size()const//常量说明不可省,否则编译无法通过
    {
        return size();
    }
    int l_size()const
    {
        return empty()?0:front().size();//列数要考虑空矩阵的情况
    }
    Matrix pow(int k);//矩阵的k次幂,用快速幂实现,k为0时返回此矩阵的单位矩阵
};
Matrix operator*(const Matrix &m,const Matrix &n)//常量引用避免拷贝
{
    if(m.l_size()!=n.h_size())return Matrix();//非法运算返回空矩阵
    Matrix ans(m.h_size(),n.l_size());
    for(int i=0; i!=ans.h_size();  i)
        for(int j=0; j!=ans.l_size();  j)
            for(int k=0; k!=m.l_size();  k)
                ans[i][j] =m[i][k]*n[k][j];
    return ans;
}
Matrix Matrix::pow(int k)
{
    if(k==0)
    {
        Matrix ans(h_size(),h_size());
        for(int i=0; i!=ans.h_size();  i)
            ans[i][i]=1;
        return ans;
    }
    if(k==2)return (*this)*(*this);
    if(k%2)return pow(k-1)*(*this);
    return pow(k/2).pow(2);
}

实际应用

编辑

数据统计

某公司有四个工厂,分布在不同地区,同时三种产品,产量(单位;t),试用矩阵统计这些数据。
工厂\产品 P1 P2 P3
5 2 4
3 8 2
6 0 4
0 1 6
可用下述矩阵描述
  
,其中四行分别表示甲乙丙丁四个工厂的生产情况,三列分布表示三种产品P1,P2,P3的产量。
再设矩阵
  
,其中第一列表示三种产品的单件利润,第二列表示三种产品的单件体积。
矩阵C的第一列数据分别表示四个工厂的利润,第二列分别表示四个工厂产品需要的存储空间。

VOJ1067

我们可以用上面的方法二分求出任何一个线性递推式的第n项,其对应矩阵的构造方法为:在右上角的(n-1)*(n-1)的小矩阵中的主对角线上填1,矩阵第n行填对应的系数,其它地方都填0。例如,我们可以用下面的矩阵乘法来二分计算f(n) = 4f(n-1) - 3f(n-2) 2f(n-4)的第k项:
利用矩阵乘法求解线性递推关系的题目我能编出一卡车来。这里给出的例题是系数全为1的情况。
给定一个有向图,问从A点恰好走k步(允许重复经过边)到达B点的方案数mod p的值
把给定的图转为邻接矩阵,即A(i,j)=1当且仅当存在一条边i->j。令C=A*A,那么C(i,j)=ΣA(i,k)*A(k,j),实际上就等于从点i到点j恰好经过2条边的路径数(枚举k为中转点)。类似地,C*A的第i行第j列就表示从i到j经过3条边的路径数。同理,如果要求经过k步的路径数,我们只需要二分求出A^k即可。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include <cmath>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define N 10
using namespace std;
const int mod = 7777777;
typedef long long LL;
 
struct matrix{
  LL a[10][10];
}origin;
int n,m;
 
matrix multiply(matrix x,matrix y)
{
   matrix temp;
   memset(temp.a,0,sizeof(temp.a));
   for (int i=0;i<n;i )
   {
      for (int j=0;j<n;j )
      {
         for (int k=0;k<n;k )
         {
            temp.a[i][j] =x.a[i][k]*y.a[k][j];
            temp.a[i][j]=(temp.a[i][j])%mod;
         }
      }
   }
   return temp;
}
 
matrix matmod(matrix A,int k)
{
    matrix res;
    memset(res.a,0,sizeof res.a);
    for (int i=0;i<n;i ) res.a[i][i]=1;
    while(k)
    {
        if (k&1) res=multiply(res,A);
        k>>=1;
        A=multiply(A,A);
    }
    return res;
}
void print(matrix x)
{
   for (int i=0;i<n;i )
   {
      for (int j=0;j<n;j )
          cout<<" "<<x.a[i][j];puts("");
   }
   printf("---------------\n");
}
int main()
{
    int k;
    while (cin>>n>>k)
    {
        memset(origin.a,0,sizeof origin.a);
        origin.a[0][0]=1;
        for (int i=1;i<=n;i )
        {
            origin.a[i][0]=1;
            for (int j=0;j<i;j )
                origin.a[i][0] =origin.a[j][0];
        }
        // print(origin);
        matrix res;
        memset(res.a,0,sizeof res.a);
        for (int i=0;i<n-1;i )
          res.a[i][i 1]=1;
        for (int i=0;i<n;i ) res.a[n-1][i]=1;
        //print(res);
        res=matmod(res,k-1);
        LL fans=0;
        for (int i=0;i<n;i )
        {
            fans =res.a[0][i]*origin.a[i][0];
            fans%=mod;
        }
        cout<<fans<<endl;
    }
    return 0;




























































































规格参数
型号 HF-100S /4寸   材质 ABS  
电源电压 220V  (V) 风量 170  
功率 35  (W) 适用范围 排烟机,抽风机  
产地 深圳   品牌 鸿冠  
包装参数
体积(m²) 0
产品重量(kg) 0
  • 与商品描述相符
  • 5
  • 5
  • 非常不满
  • 不满意
  • 一般
  • 满意
  • 非常满意
联系方式
注意:1 . 使用电话联系可有效保证您的号码隐私不被泄露
          2 . 拨打后可在后台进行拨打记录查询
          3 . 成交后在会员中心确认可获得积分
联系人:巫小姐
电话:13590192208
获取更低报价
联系电话:

按排行字母分类:A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z

Copyright©2026 搜了网版权所有粤ICP备07509311号-1搜了网推广热线:400-888-5105 关注我们:

增值电信业务经营许可证:粤B2-20090212互联网药品信息服务资格证书:(粤)-非经营性-2012-0057 粤公网安备 44030502000007号