4

私は二次元行列を持っています。私の行列はまばらです。パフォーマンスの問題に直面しています。プログラムのパフォーマンスを向上させるためにスパース行列を処理するために Java で使用できる API またはクラスを教えてください。

たとえば、私が欲しい

it take 100x100 matrix
handle sparse stuff
do the multiplication
return me my matrix same as 100x100 with 0 ( mean sparse matrix )
4

4 に答える 4

6

Jama は大規模なスパース行列ではひどいものです。

Colt線形代数ライブラリを見てください。


スパース線形代数の別の可能性は、apache commonsライブラリです。コルトより少し軽いかもしれませんがジャマの見た目との差は少し大きいかもしれません。

于 2010-02-22T18:32:33.530 に答える
1

あなたはla4j(Javaの線形代数)を見るかもしれません。la4jは、密行列だけでなく疎行列もサポートします。サポートされているマトリックスタイプのリストは次のとおりです。1D-配列(密)、2D-配列(密)、CRS-圧縮行ストレージ(スパース)、CCS-圧縮列ストレージ(スパース)。

于 2013-02-11T04:14:29.530 に答える
1

SuanShuには、多数のスパース行列が実装されています。独自に作成する代わりに、単純にそれらを使用できます。

現在、CSR、DOK、LI​​L の形式をサポートしています。

于 2011-01-08T11:37:48.013 に答える
0

Jamaを使ってみましたか?http://math.nist.gov/javanumerics/jama/ - スパース行列を直接サポートしていませんが、広く使用されているパッケージです。

また、プリンストンには疎行列の実装があるようですhttp://www.cs.princeton.edu/introcs/44st/SparseMatrix.java.htmlをご覧ください

于 2010-02-22T18:29:01.000 に答える