insertionSort(array A)
begin
for i := 1 to length[A]-1 do
begin
value := A[i];
j := i-1;
while j ≥ 0 and A[j] > value do
begin
A[j + 1] := A[j];
j := j-1;
end;
A[j+1] := value;
end;
end;
kalo di implementasi kan ke java, kita bisa gunakan source code berikut...
public class Sort {
private Sort(){}
public static
for (int i = 1; i < arr.length; i++) {
int j = i;
T t = arr[i];
while ((j > 0) && (
isAscending && (arr[j - 1].compareTo(t) > 0) ||
!isAscending && (arr[j - 1].compareTo(t) < 0))) {
arr[j] = arr[j - 1];
j–;
}
arr[j] = t;
}
return arr;
}
public static T[] insertion(T[] arr, Comparator comparator, boolean isAscending){
for (int i = 1; i < arr.length; i++) {
int j = i;
T t = arr[i];
while ((j > 0) && (
isAscending && (comparator.compare(arr[j - 1], t) > 0) ||
!isAscending && (comparator.compare(arr[j - 1], t) < 0))) {
arr[j] = arr[j - 1];
j–;
}
arr[j] = t;
}
return arr;
}
}
semoga berguna...
sumber: My brain and hjaya.wordpress.com.

















