矩阵的存储及转置算法.docVIP

  • 7
  • 0
  • 约9.11千字
  • 约 12页
  • 2016-12-25 发布于重庆
  • 举报
矩阵的存储及转置算法 本文要点: 1.对称矩阵与稀疏矩阵 2.两种矩阵的压缩存储 3.代码实现两种矩阵 对称矩阵SymmetryMatrix 1.对称矩阵也是一种特殊矩阵,满足Aij = Aji(设矩阵为A,且有0=iN-1 0=jN-1),这种矩阵以对角线分割为上三角和下三角,关于对角线对称的元素相等。 2.对称矩阵的压缩存储 如果把矩阵中的每个元素都存储起来,那么就会显得浪费空间,因为每两个关于对角线对称的元素相等,因此就可以将矩阵压缩存储到一个数组Array中,即:将对称的两个元素存一份,对角线上的元素都存储起来,也就是说只存储上三角或下三角,那么存储的元素的总个数就为n(n+1)/2个,这样,当n特别大的时候,也就最有效。 压缩存储的数组与矩阵之间满足:Array[i*(i+1)/2+j] = Martix[i][j](下三角存储i=j) 3.代码实现 [cpp]?view plain?copy ? templateclass?T?? class?SymmetryMatrix?? {?? public:?? ????SymmetryMatrix(const?T*?a,size_t?n)?? ????????:_matrix(new?T[n*(n+1)/2])?? ????????,_size(n*(n+1)/2)?? ????????,_n(n)?? ????{??

文档评论(0)

1亿VIP精品文档

相关文档