对称矩阵及稀疏矩阵浅谈
1.对称矩阵 特点: 关于对角线对称,Aij == Aji。 下面实现: ①对称矩阵的压缩存储 ②对称矩阵的访问 ③对称矩阵的还原 实现代码如下: #define _CRT_SECURE_NO_WARNINGS 1 #include<iostream> using namespace std ; //对称矩阵的压缩存储 template < class T> class SymmetricMatrix { public : SymmetricMatrix(T* array , size_t N) :_N(N) ,_a(NULL) { _a = new T[(N * (N + 1 ))>> 1 ]; for (size_t i = 0 ; i < N; ++i) { for (size_t j = 0 ; j < N; ++j) { if (i >= j) //表明是下三角数据时 { _a[(i * (i + 1 ))>> 1 + j] = array [i * N + j]; } else { break ; } } } } T& Access(size_t x, size_t y) { if (x < y) //如果访问上三角元素 { swap(x, y); } return _a[(x * (x + 1 )) >> 1 + y]; } void DisPlay() { for