質問

私は解決策を確認するために盲目にするだろうか?

sampleSum = 0;
for(int x : sampleWeights)
   sampleSum += x;

population = new int[sampleSum];
int z = 0;

for(int i = 0; i < nsamples; i++)
for(int j = 0; j < sampleWeights[i]; j++) 
{
    population[z] = i;
    z++;
}  

すべてのヘルプは歓迎です!ありがとう!

役に立ちましたか?

解決

全てsampleWeightsがゼロである場合、

sampleSumはゼロとpopulation.length = 0であろう。あなたが人口を行うときに、[Z]は、ArrayIndexOutOfBoundsExceptionが発生します。

他のヒント

私はあなたが、N個の整数を持っていることを前提とし、N =#サンプルx番号の重み/サンプル(I)?

これはどこにsampleWeights配列(または整数のリスト与えられたオートボクシング)を取得しましたか?

から、該当する場合

デバッグ情報を収集するために、いくつかのSystem.out.printlnの再びあなたのコードを実行し、あなたはすぐに何が間違って表示されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top