私は、すべての「ブロック」 b が phi(x)=b (euler totient A000010 ) になるすべての数値 x のリストを持つ配列を構築しようとしています。たとえば、配列[10]=11,22 および配列[4]=5,8,10,12 です。私が通常行っていたのは、2次元配列の構築ですが、これにより明らかなスタックオーバーフロー例外がスローされます。より効率的な構造を構築するのを手伝ってもらえますか(ヒープスペースに関して)。
質問する
87 次
4 に答える
1
Java では、配列のサイズは固定されています。入れたいものが実際のサイズを超えると、スタックオーバーフローが発生します(私たちのウェブサイトのように)。array の代わりに arraylist を使用することをお勧めします。arraylist は動的サイズです。
ArrayList<ArrayList<Integer>> list = new ArrayList<ArrayList<Integer>>()
于 2013-11-05T21:19:28.337 に答える
1
私が通常行うことは、サイズの 2 次元配列を構築することですが、これにより明らかなスタック オーバーフロー例外がスローされます。
まあ、そうだろう。行には可変数の要素があるため、配列が割り当てていないものにインデックスを付けると、例外が発生します。たとえば、List
s またはs の使用を検討してください。Set
List<List<Integer>> myOverlyComplexList = ...
次に、各要素に変数の数列を設定できます。
于 2013-11-05T21:15:37.007 に答える