8

スパース行列に対していくつかの数学演算を実行する必要があります。特に行列の行数が200を超える可能性があるため、配列を使用することがメモリを利用する最も効率的な方法ではない可能性があることに気付きました。リンクリストの使用も検討しましたが、それが良いかどうかはわかりません。この状況に適したデータ構造[アプローチ]はありますか。

4

3 に答える 3

11

「200行以上」はいくつですか?どのくらいまばらですか?ダブルスの1000x1000マトリックスはまだ8MB未満です。これは、それらの多くを同時に操作する必要がない限り、私が心配することではありません。

理想的なデータ構造は、主に実行する必要のある操作の種類によって異なります。

すべての一般的な言語にすぐに使用できるスパース行列ライブラリがあることに注意してください。独自の言語を使用するよりも、そのうちの1つを使用する方がはるかに優れています。

于 2009-06-12T22:49:23.593 に答える
1

これは、スパース行列を含むいくつかのオープンソースのJava数学ライブラリです。使用されているデータ構造を調べることができます(または、Javaでプログラミングする場合はそのうちの1つを使用することもできます)。

于 2009-06-12T22:51:51.327 に答える
0

優れたスパース行列サポートがあるように見えるJava用の新しい行列ライブラリがあります:UJMP:ユニバーサルJava行列パッケージ

于 2009-07-13T16:34:14.993 に答える