- 稀疏矩陣定義:
即其中只有很少非零元素的矩陣,這樣的矩陣就成為稀疏矩陣,這種特性提供了矩陣存儲(chǔ)空間和計(jì)算時(shí)間的優(yōu)點(diǎn),例如: A=[ 0 0 0 5; 0 2 0 0; 1 3 0 0; 0 0 4 0; ];
Sparse matrix :稀疏矩陣
- 稀疏矩陣的轉(zhuǎn)換:
給出一個(gè)矩陣A,我們可以使用MATLAB函數(shù)sparse把它轉(zhuǎn)換成稀疏矩陣,該函數(shù)語(yǔ)法為: S=sparse(A) 例如: >> A=[ 0 0 0 5; 0 2 0 0; 1 3 0 0; 0 0 4 0; ]; >> S=sparse(A) S= (3,1) 1 (2,2) 2 (3,2) 3 (4,3) 4 (1,4) 5 括號(hào)內(nèi)的坐標(biāo)是元素在矩陣中位置索引,坐標(biāo)按照元素值排列
- 稀疏矩陣的獲得:
函數(shù)sparse()的更常用的用法是用來(lái)產(chǎn)生稀疏矩陣,具體語(yǔ)法如下: S=vsparse(r,c,s,m,n) 其中r和c是我們希望產(chǎn)生的稀疏矩陣的矩陣中非零元素的行和列索引向量。參數(shù)s是一個(gè)向量,它包含索引對(duì)(r,c)對(duì)應(yīng)的數(shù)值,m和n是結(jié)果矩陣的行維數(shù)和列維數(shù)。例如:
>> s=sparse( [3 2 3 4 1 ],[ 1 2 2 3 4 ],[1 2 3 4 5],4,4) s = (3,1) 1 (2,2) 2 (3,2) 3 (4,3) 4 (1,4) 5 如果要獲得完成的矩陣,可以使用full()函數(shù),函數(shù)語(yǔ)法: A=full(s) 例如: >> a=full(s) a = 0 0 0 5 0 2 0 0 1 3 0 0 0 0 4 0
|