javaで2の1乘から2の100000000乘までの値のmod n(nは1000ビット)の値をBigInteger型の配列に格納したくて
A.java
BigInteger a = new BigInteger("2");
BigInteger b = new BigInteger("1");
f[0] = b;
for(j=1;j<100000000;j++)
f[j]= (f[j-1].multiply(a)).mod(n) ; ・・・ここでエラー
のようなプログラムを作成しましたがjava -Xmx1400m A 実行するとjava.lang.OutOfMemoryError: Java heap space というエラーがでます。私のパソコンでは1400mが限界でこれ以上超えるとToo small initial heap というエラーが出ます。なんとかエラーが出ずにプログラムを実行させる方法はないでしょうか?
No.1ベストアンサー
- 回答日時:
1400MBのメモリ内にBigIntegerのオブジェクトを100000000個格納しようとすると、単純計算で1オブジェクトあたり15バイトも使えないことになります。
BigInteger 1オブジェクトに必要なメモリサイズは保持する値によって変わりますが、nは1000ビットの値なので、nで割った剰余が平均15バイト以内で表せるわけがありません。お使いのコンピュータのメモリをちょっとやそっと増やしても100000000要素のBigInteger配列を全てメモリ内に格納することは無理です。100000000要素を同時にメモリ内に格納しなくていいように、プログラムの構成を変えるしかないでしょう。
計算を終えた部分はファイルに書き出して、その値が後で必要になったときにはファイルからまた読み出すようにするとか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL VBAにて動的にCheckBOXを...
-
パワーポイントのVBAでテキスト...
-
CoCreateInstanceでエラーになる。
-
error C2712: オブジェクト ア...
-
Excelで =EMBED("Acrobat Docu...
-
ワードで画像をドロップすると...
-
COMコンポーネントって何?
-
bmp画像をjpegやpng画像に圧縮...
-
VBA 同じ名前のオブジェクトを...
-
ワイルドカード<?>と型パラメー...
-
Accessの連結・非連結オブジェ...
-
時間帯判定をする。
-
VBAのWindowオブジェクトとWork...
-
Visual Studioでのbmpファイル...
-
AccessからMSペイントを起動さ...
-
javaで引数が違うobjectを利用...
-
VBAのオブジェクトの値を保持し...
-
オブジェクトと関数の違い
-
Vbで通常使用するプリンターを...
-
C#でフォームのオブジェクト名...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パワーポイントのVBAでテキスト...
-
VBA 同じ名前のオブジェクトを...
-
Excelで =EMBED("Acrobat Docu...
-
C#でフォームのオブジェクト名...
-
VBAのWindowオブジェクトとWork...
-
EXCEL VBAにて動的にCheckBOXを...
-
時間帯判定をする。
-
ビジュアルC++でボタンの有...
-
COMコンポーネントって何?
-
Object型からDouble型へのキャスト
-
error C2712: オブジェクト ア...
-
LISTBOXの内容が更新されま...
-
ワイルドカード<?>と型パラメー...
-
戻り値がクラスオブジェクト
-
bmp画像をjpegやpng画像に圧縮...
-
VBAからノーツを起動
-
Accessの連結・非連結オブジェ...
-
ワードで画像をドロップすると...
-
CoCreateInstanceでエラーになる。
-
オブジェクトレベルとメタレベル
おすすめ情報