矩阵的存储方式
完全存储方式:将矩阵的全部元素按列存储。
稀疏存储方式:只存储矩阵的非零元素的值及其位置,即行号和列号。
注意,采用稀疏存储方式时,矩阵元素的存储顺序并没有改变,也是按列的顺序进行存储。
$ A = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 5 & 0 & 0 \\ 2 & 0 & 0 & 7 \\ \end{bmatrix} $
A矩阵的稀疏存储方式:
(1,1),1
(3,1),2
(2,2),5
(3,4),7
当矩阵的规模很大时,采用稀疏存储方式可以大大节约存储空间。
稀疏存储方式的产生
完全存储方式与稀疏存储方式之间的转化
A=sparse(S)
:将矩阵S转化为稀疏存储方式的矩阵A。
S=full(A)
:将矩阵A转化为完全存储方式的矩阵S。
例2.5.1:
>> A = sparse(eye(5))
>> B = full(A)
>> whos
直接建立稀疏存储矩阵
sparse函数的其他调用格式:
sparse(m,n)
:生成一个m×n的所有元素都是零的稀疏矩阵。
sparse(u,v,S)
:其中u、v、S是3个等长的向量。S是要建立的稀疏存储矩阵的非零元素,u(i)、v(i)分别是S(i)的行和列下标。
稀疏矩阵的应用实例
标签:存储,方式,矩阵,稀疏,Matlab,sparse,2.5 From: https://www.cnblogs.com/crepuscule/p/17081202.html