プログラム例を使用した Java の挿入ソート アルゴリズム
挿入ソート アルゴリズムとは
挿入ソートは、小さなデータ セットに適した単純なソート アルゴリズムです。各反復中、アルゴリズム:
- 配列から要素を削除します。
- 配列内の最大値と比較します。
- 要素を正しい位置に移動します。
挿入ソート アルゴリズム プロセス
挿入ソート アルゴリズム プロセスが図でどのように機能するかを次に示します。
挿入ソート アルゴリズム プロセス
挿入ソート アルゴリズムを使用して配列をソートする Java プログラムの例:
package com.guru99;
public class InsertionSortExample {
public static void main(String a[])
{
int[] myArray = {860,8,200,9};
System.out.println("Before Insertion Sort");
printArray(myArray);
insertionSort(myArray);//sorting array using insertion sort
System.out.println("After Insertion Sort");
printArray(myArray);
}
public static void insertionSort(int arr[])
{
int n = arr.length;
for (int i = 1; i < n; i++)
{ System.out.println("Sort Pass Number "+(i));
int key = arr[i];
int j = i-1;
while ( (j > -1) && ( arr [j] > key ) )
{
System.out.println("Comparing "+ key + " and " + arr [j]);
arr [j+1] = arr [j];
j--;
}
arr[j+1] = key;
System.out.println("Swapping Elements: New Array After Swap");
printArray(arr);
}
}
static void printArray(int[] array){
for(int i=0; i < array.length; i++)
{
System.out.print(array[i] + " ");
}
System.out.println();
}
}
コード出力:
Before Insertion Sort 860 8 200 9 Sort Pass Number 1 Comparing 8 and 860 Swapping Elements: New Array After Swap 8 860 200 9 Sort Pass Number 2 Comparing 200 and 860 Swapping Elements: New Array After Swap 8 200 860 9 Sort Pass Number 3 Comparing 9 and 860 Comparing 9 and 200 Swapping Elements: New Array After Swap 8 9 200 860 After Insertion Sort 8 9 200 860
Java
- C ライブラリの calloc() 関数とプログラムの例
- Java Hello World:サンプルを使用して初めての Java プログラムを作成する方法
- 例を使用した Java OOP でのカプセル化
- 例を使用した Java 変数とデータ型
- Java の String Length() メソッド:例で見つける方法
- Java String charAt() メソッドと例
- Java String contains() メソッド |部分文字列を例でチェック
- 例を使用したJava文字列のendsWith()メソッド
- Java BufferedReader:例を使用して Java でファイルを読み取る方法
- Java のバブル ソート アルゴリズム:配列ソート プログラムと例
- 例を使用したJavaプログラムでの選択ソート