稀疏矩阵的压缩存储 压缩存储值存储极少数的有效数据。使用{row,col,value}三元组存储每一个有效 数据,三元组按原矩阵中的位置,以行优先级先后顺序依次存放。
矩阵的转置 将原矩阵的行、列对换,也就是将[i][j]和[j][i]位置上的数据对换。
在压缩存储的过程中要注意越界问题
SparseMatrix( T *arr , int m, int n, T invalid)
:_row( m)
,_col( n)
, _invalid( invalid)
{
for (int i = 0; i < _row; i++)
{
for (int j = 0; j < _col; j++)
{
if (arr [i*_col + j] != invalid)
{
Trituple t(i, j, arr [i*_col + j]);
sm.push_back(t);
}
}
}
}
还原矩阵
void Display1()
{
size_t index = 0;
for (size_t i = 0; i < _row; i++)
{
for (size_t j = 0; j < _col;