2

このメソッドは、頻度配列を累積頻度配列に変換します。たとえば、初期配列が { 1, 2, 3, 4} の場合、メソッドを呼び出すと { 1, 3, 6, 10} が返されます。

これは私が書いたものです:

public void cumulate(int[] a)
{
   for (int i= 0; i < a.length; i ++){
          a[i] = a[i-1] + a[i];
    }
}

私はそれが間違っていると確信していますが、別のコードセットを生成するには助けが必要です. 誰かが私を助けることができれば、それは素晴らしいことです!

4

1 に答える 1

3

さて、あなたは i = 0 の配列の外に出ています。したがって、1 から始めます。

public void cumulate(int[] a) {
   for (int i = 1; i < a.length; i++){
          a[i] = a[i - 1] + a[i];
    }
}

今は大丈夫なはずです。

于 2012-06-05T16:49:20.360 に答える