稀疏矩阵

             

   稀疏矩阵(Sparse Matrix)有不同的储存方式(数据结构),这里介绍几种常见的1

Banded

   Banded 矩阵只储存矩阵主对角线上下的若干条对角线,上带宽和下带宽分别指定主对角线上面和下面有几条对角线,例如三对角矩阵的上带宽和下带宽都是 1.带内即使有矩阵元为零也必须储存.这样就可以按照 row major 或者 column major 来储存.

Coordinate List(COO)

   COO 格式列出非零矩阵元和对应的行标列标.通常将它们储存为三个数组 aiaja,顺序任意.除此之外,有时还需要储存三个数组的长度 nnz(none zero)以及矩阵的尺寸.

Compressed Sparse Row(CSR)

   也叫 Compressed Row Storage(CRS),这种格式做矩阵与矢量相乘较快.

   CRS 格式储存为三个数组 aiaja,非零矩阵元按照 row major 的顺序储存,第 n 行矩阵元是 a(ia(n) : ia(n+1)-1)ja 是对应矩阵元的列标.

Compressed Sparse Column(CSC)

   也叫 Compressed Column Storage(CCS),与 CRS 一样,只是改为 column major.


1. ^ 参考 Wikipedia 的 Sparse Matrix 词条

         

© 小时科技 保留一切权利