复习矩阵,程序中的矩阵
2016-03-19 02:47
369 查看
1.矩阵
m*n 记为m行*n列的矩阵(row*column),只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有意义。
2. 矩阵乘法运算
定义:设A为
的矩阵,B为
的矩阵,那么称
的矩阵C为矩阵A与B的乘积,记作
,其中矩阵C中的第
行第
列元素可以表示为:
如下所示:
示意图:
(1)当矩阵A的列数等于矩阵B的行数时,A与B可以相乘。
(2)矩阵C的行数等于矩阵A的行数,C的列数等于B的列数。
(3)乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。
3.基本性质
乘法结合律: (AB)C=A(BC).
乘法左分配律:(A+B)C=AC+BC
乘法右分配律:C(A+B)=CA+CB
对数乘的结合性k(AB)=(kA)B=A(kB).
转置 (AB)T=BTAT.
矩阵乘法一般不满足交换律。即:
4.在程序中矩阵的数据存储方式(程序存储方式)
m行n列矩阵数据结构:array[m]
= {a00, a01, a02,
a03, ..., a0n,
a10, a11, a12, a13,
..., a1n,
a20, a21, a22, a23,
..., a2n,
...........
am0, am1, am2, am3,
..., amn};
array[0][0~n] -- 第0行数据,首地址array[0][0]在程序中最小;
array[1][0~n] -- 第1行数据,首地址array[1][0]在该行中最小,地址array[1][0] = 地址array[0][0] + n*单位(声明的数据类型);
当作一维矩阵看时,array[j][i] = array[j*n + i];
m*n 记为m行*n列的矩阵(row*column),只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有意义。
2. 矩阵乘法运算
定义:设A为
的矩阵,B为
的矩阵,那么称
的矩阵C为矩阵A与B的乘积,记作
,其中矩阵C中的第
行第
列元素可以表示为:
如下所示:
示意图:
(1)当矩阵A的列数等于矩阵B的行数时,A与B可以相乘。
(2)矩阵C的行数等于矩阵A的行数,C的列数等于B的列数。
(3)乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。
3.基本性质
乘法结合律: (AB)C=A(BC).
乘法左分配律:(A+B)C=AC+BC
乘法右分配律:C(A+B)=CA+CB
对数乘的结合性k(AB)=(kA)B=A(kB).
转置 (AB)T=BTAT.
矩阵乘法一般不满足交换律。即:
4.在程序中矩阵的数据存储方式(程序存储方式)
m行n列矩阵数据结构:array[m]
= {a00, a01, a02,
a03, ..., a0n,
a10, a11, a12, a13,
..., a1n,
a20, a21, a22, a23,
..., a2n,
...........
am0, am1, am2, am3,
..., amn};
array[0][0~n] -- 第0行数据,首地址array[0][0]在程序中最小;
array[1][0~n] -- 第1行数据,首地址array[1][0]在该行中最小,地址array[1][0] = 地址array[0][0] + n*单位(声明的数据类型);
当作一维矩阵看时,array[j][i] = array[j*n + i];
相关文章推荐
- CentOS6.7配置IP
- 游戏服务器开发的基本体系
- Arduino 简介
- [Errno 14] curl#6 - "Could not resolve host: centos.ustc.edu.cn; 未知的错误"
- 红黑树的介绍以及代码实现(C++)
- 136. Single Number
- 17. 数组拷贝
- 第14课:spark RDD解密学习笔记
- 实现颜色渐变--iOS开发
- FZU - 2218 Simple String Problem
- 《游戏觉醒之Cocos2d-x3.10游戏开发》- 场景(Scene)
- 软件测试 第一次试验
- 《游戏觉醒之Cocos2d-x3.10游戏开发》- 导演(Director)
- 在西电四年的小结和对小型机器人制作的总结(上)
- 《游戏觉醒之Cocos2d-x3.10游戏开发》- 生命周期
- java sqlhelper
- 16. Java二维数组可以变长
- NavigationBar颜色不对怎么破--iOS 开发
- Python3.x爬虫
- 解析SDWebImage框架和RunLoop