广东省汕头市金山中学高中信息技术 竞赛班数据结构专项培训教程(3)

2020-12-24 21:19

就可实现三元组的矩阵转置。 这里关键是如何重排三元组里的次序。

6 6 8 1 1 15 1 4 22 1 6 -15 2 2 11 2 3 3 3 4 -6 5 1 91 6 3

28

6 6 8 1 1 15 4 1 22 6 1 -15 2 2 11 3 2 3 4 3 -6 1 5 91 3 6

28

6 6 8 1 1 15 1 5 91 2 2 11 3 2 3 3 6 28 4 1 22 4 3 -6 6 1

-15

T = => B =

§5.2.2 矩阵相乘

两个矩阵相乘是另一种常用的矩阵运算。

设: C = A × B

A=(aij)为m×s的矩阵,B=(bij)是s×n的矩阵,则矩阵A与矩阵B相乘将得到一个m×n的矩阵C=(cij),其中

cij=ai1b1j + ai2b2j + …… + aisbsj (i = 1 , 2 ,…, m j = 1 , 2 ,…, n) 对于非压缩矩阵,算法如下:

for i := 1 to m do

for j := 1 to n do begin

C[ i , j ] := 0;

for k := 1 to s do

C[ i , j ] := C[ i , j ] + A[ i , k ] * B[ k , j ];

end;

当A和B是稀疏矩阵,并分别用三元组M、N存储时,应如何处理?

注意 1:两个稀疏矩阵相乘的积不一定是稀疏矩阵;

2:即使cij=ai1b1j + ai2b2j + …… + aisbsj中的每个分项aikbkj均不为零,其累加值Cij也有可能为零。

【练习】输入M、N两个三元组,分别表示A、B两个稀疏矩阵,请计算A、B的乘积C,

输出C的(压缩存储)三元组Y。 输入格式: (输入文件 syz.in)

第1行: i1 j1 v1 (分别表示A的行数、列数、非零元素个数) 第2至v1+1行: ai aj av (行下标、列下标、元素的值) 第v1+2行: i2 j2 v2 (B的行数、列数、非零元素个数) 第v1+3至v1+v2+2行:bi bj bv 输出格式: (输出文件 syz.out)

第1行: i3 j3 v3 (C的行数、列数、非零元素个数)


广东省汕头市金山中学高中信息技术 竞赛班数据结构专项培训教程(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:最新版河北省唐山一中高一下学期期中考试数学(理)试题Word版含答

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: