-1

我需要以双数的形式获取稀疏矩阵的存储大小。我需要在运行时获取这些信息。

4

2 回答 2

2

您可以使用该命令whos获取变量使用的空间。

http://www.mathworks.fr/fr/help/matlab/ref/whos.html

whos var_name

info=whos('var_name');
于 2012-12-02T23:05:02.680 回答
0

非零元素连同它们的行索引一起被存储,所以

nnz(x);

是一个很好的近似值,因为它返回非零元素的数量

如果您的稀疏矩阵变得异常大,您可以检查nnz以跟踪可能导致覆盖大量零元素的错误。

所以使用稀疏矩阵的有效性也可以用

s=size(m_sparse);
effectiveness = 1 - nnz(x)/(s(1)*s(2))
于 2012-12-02T23:05:21.927 回答