ホームページ >Java >&#&チュートリアル >Java配列に要素を挿入して素早く並べ替える方法

Java配列に要素を挿入して素早く並べ替える方法

PHPz
PHPz転載
2023-04-20 09:43:061327ブラウズ

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 サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。