1. アルゴリズムの概念。
毎回、最初の要素が順序なしリストから取り出され、順序付きリストの適切な位置に挿入されるため、順序付きリストは順序付けされたままになります。
2. アルゴリズム的思考。
ソート対象のレコードが配列 R[1..n] に格納されているとします。最初に、R[1] は順序付けされた領域を形成し、順序付けされていない領域は R[2..n] です。 i=2 から i=n まで、R[i] が現在の順序付け領域 R[1..i-1] に順番に挿入され、n 個のレコードを含む順序付き領域が生成されます。
public static void insertSort(int[] array) { int len = array.length; for (int i = 1; i < len; i++) { for (int j = i; j > 0; j--) { if ( array[j] < array[j - 1]) { Sort.swap(array, j, j - 1);// j と j-1 を交換する } else Break;
挿入ソート図:
以上がこの記事で共有した内容のすべてであり、挿入ソート アルゴリズムを理解する上で皆様のお役に立てれば幸いです。