运用三项式法:用二维数组A(0:n,1:3)来表示
A(0,1)=>表示矩阵的行数;
A(0,2)=>表示矩阵的列数;
A(0,3)=>表示矩阵非零项目的总数;
优点:可以减少内存不必要的浪费;
实现:
/*压缩稀疏矩阵(Sparse)的核心算法*/ Compress[0][0]=_ROWS; Compress[0][1]=_COLS; Compress[0][2]=_NOTZERO; for(i=0;i<_ROWS;i++) for(j=0;j<_COLS;j++) if(Sparse[i][j]!=0) { Compress[temp][0]=i; Compress[temp][1]=j; Compress[temp][2]=Sparse[i][j]; temp++; }