sparse函数
功能:创建稀疏矩阵
用法1:S=sparse(X)—将矩阵X转化为稀疏矩阵的形式,即矩阵X中任何零元素去除,非零元素及其下标(索引)组成矩阵S。 如果X本身是稀疏的,sparse(X)返回S。
举例如下:
1 >> a=[1,0,2;0,0,1;0,0,6]; 2 >> a 3 4 a = 5 6 1 0 2 7 0 0 1 8 0 0 6 9 10 >> b=sparse(a) 11 12 b = 13 14 (1,1) 1 15 (1,3) 2 16 (2,3) 1 17 (3,3) 6
用法2:S = sparse(i,j,s,m,n,nzmax)——由i,j,s三个向量创建一个m*n的稀疏矩阵(上面的B矩阵形式),并且最多含有nzmax个元素。
例如:B=sparse([1,2,3],[1,2,3],[0,1,2],4,4,4)
B =
(2,2) 1
(3,3) 2
其中i=[1,2,3],稀疏矩阵的行位置;j=[1,2,3],稀疏矩阵的列位置;s=[0,1,2],稀疏矩阵元素值。 其位置为一一对应。
m=4(>=max(i)),n=4(>=max(j)) (注:m和n的值可以在满足条件的范围内任意选取),用于限定稀疏的大小。
nzmax=4(>=max(i or j)),稀疏矩阵最多可以有nzmax个元素。
full函数
功能:把稀疏矩阵转为全矩阵
A=full(X)—把稀疏矩阵X转换为全矩阵存储形式A
例如:矩阵b为上面例子中的结果
1 >> c=full(b) 2 3 c = 4 5 1 0 2 6 0 0 1 7 0 0 6