在org.apache.commons.math.linear包中访问Sparse Matrix的所有条目

时间:2010-08-17 00:15:30

标签: java math apache-commons sparse-matrix

我在这个包中看到了2个稀疏矩阵的实现。

  1. OpenMapRealMatrix
  2. SparseFieldMatrix
  3. 两者都被记录为“基于开放寻址地图的稀疏矩阵实现”。

    你知道两者之间的差异吗?另外,以快速方式迭代所有条目的最佳方法是什么(这意味着迭代非零元素)。

    谢谢!

1 个答案:

答案 0 :(得分:1)

SparseFieldMatrix只是一个由OpenMapRealMatrix类实现的接口。

要最有效地遍历条目,请查看walkInOptimizedOrder重载,具体取决于您在迭代时需要执行的操作。您需要为这些方法提供一个Visitor实例,然后处理迭代。当您需要对每个元素进行只读访问时,请参阅this example

我从本文档中不清楚迭代如何适用于您希望使用的稀疏矩阵。它说你会访问所有条目,但这是否只意味着非零,我不能确定。