1. 配列の 2 番目の要素から操作します。前の要素がそれより大きい場合は、cur が指す要素が前の要素以上になるまで、前の要素を戻します。 time curが指す位置が、挿入する要素を挿入する位置です。
static int[] insertSort2(int[] array){ int len = array.length; for (int begin = 1; begin < len; begin++){ int cur = begin; int tmp = array[cur]; while (cur > 0 && array[cur] < array[cur-1]){ array[cur] = array[cur-1]; cur--; } array[cur] = tmp; } return array; }
2. 二分探索により、比較の数、つまり cmp 関数呼び出し が減り、swap 関数呼び出しも減ります。現在の要素を挿入する位置を見つけて移動する方が速く、効率が向上します。
以上がJava配列に要素を挿入して素早く並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。