2016 - 2024

感恩一路有你

稀疏矩阵的三元组存储方法 稀疏矩阵压缩存储的基本思想是什么?

浏览量:1352 时间:2021-03-17 19:01:02 作者:admin

稀疏矩阵压缩存储的基本思想是什么?

稀疏矩阵压缩存储的目的是:C节省存储空间,D降低预算时间的复杂度,如果是单选题,则应选择C节省存储空间。如果矩阵中非零元素的个数远远小于矩阵元素的总数,且非零元素的分布不规则,则称为稀疏矩阵;否则,如果非零元素的分布是规则的(如三角矩阵、下三角矩阵、对角矩阵),这个矩阵叫做特殊矩阵。由于matlab只对非零元素进行运算,稀疏矩阵的计算速度较快,这是稀疏矩阵的一个突出优点。假设矩阵A和B中的矩阵是相同的。计算2*a需要一百万次浮点运算,而计算2*B只需要2000次浮点运算。由于matlab不能自动生成稀疏矩阵,因此需要专门的命令来生成稀疏矩阵,如果每个数组元素需要l个字节,那么整个矩阵就需要m*n*l个字节。然而,大部分的存储空间是0元素,造成了大量的空间浪费。为了节省存储空间,只能存储非0元素

代码如下:#生成单位矩阵,这是普通矩阵无法创建的,所以使用sparsematrix创建。num_u2;samples=180000rownumber=c(1:num_2;samples)colnumber=c(1:num_2;samples)value=c(rep(1,each=num_2;samples))M=sparse matrix(rownumber,colnumber,x=value)#为单位矩阵赋值。所有赋值完成后,它是一个对称稀疏矩阵,值为4*50*180000。for(i in 1:numŠSamples){w=wŠ有50个浮点值。N=邻居#有50个整数值。M=M-T(W)M=M-W M=M W%*%T(W)}

稀疏矩阵在压缩存储后将失去随机访问功能。稀疏矩阵经过压缩存储后,将失去随机存储的功能。在这种矩阵中,非零元素的分布是不规则的。为了压缩存储空间,将每个非零元素的值及其行、列号作为一个节点存储在一起。由这些节点组成的线性表称为三重表。它不再是一个简单的向量,因此不可能用下标直接访问矩阵中的元素。

稀疏矩阵的三元组存储方法 用三元组实现稀疏矩阵 稀疏矩阵是什么

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。