insertion sorting in java code example
Example 1: java insertion sort
/**
* Insertion sort algorithm, O(n^2) time complexity.
*/
public static void insertionSort(int[] arr) {
int n = arr.length;
for(int i = 1; i < n; i++) {
int key = arr[i];
int j = i - 1;
//shift until you find the position to place the element 'key'
while(j >= 0 && arr[j] > key) {
arr[j+1] = arr[j];
j--;
}
//place element 'key' in the correct position in the sorted part of the array
arr[j+1] = key;
}
}
Example 2: insertion sort c++
void InsertionSort(int* A, int size)
{
int i, key, j;
for (i = 1; i < N; i++)
{
key = A[i];
j = i - 1;
/* Move elements of arr[0..i-1], that are
greater than key, to one position ahead
of their current position */
while (j >= 0 && A[j] > key)
{
A[j + 1] = A[j];
j = j - 1;
}
A[j + 1] = key;
}
}