0

insertsort メソッドでの比較のカウンターが正しいことを再確認したいだけです。だと思いますが、確認したいだけです。icount++ です。底に向かって。

読んでくれてありがとう。

public static void insertionsort(int[] arr)
  {
    int i, j, newValue;
    for (i = 1; i < arr.length; i++)
      {
        newValue = arr[i];
        j = i;
        while (j > 0 && arr[j - 1] > newValue)
          {
            icount++;
            arr[j] = arr[j - 1];
            j--;
          }
        arr[j] = newValue;
      }
  }
4

1 に答える 1

0

配列要素間の比較の数を数えたい場合は、ほぼ正しいですが、次の要素を挿入する位置 (先頭ではない) を見つけたときにループが終了する場合がありません。

于 2013-11-08T22:39:15.833 に答える