package algorithms.sort;
/**
*
* @author Nageswara Rao. V
* @version 1.0 date : June 8, 2011
*/
public class InsertionSort {
public static int[] insertionSort(int[] src) {
for(int pos = 1; pos < src.length; pos++) {
int i = pos;
while((i>0) && (src[i] < src[i-1])) {
swap(src, i, i-1);
i = i-1;
}
}
return src;
}
public static void swap(int[] src, int start, int end) {
src[start] = src[start]+src[end];
src[end] = src[start] - src[end];
src[start] = src[start] - src[end];
}
public static void print(int[] src) {
for(int i=0; i < src.length; i++) {
System.out.print(src[i]+" ");
}
}
public static void main(String args[]) {
int[] src = {4, 3, 8, 2, 1, 0};
System.out.println("\nSource");
print(src);
insertionSort(src);
System.out.println("\nResult");
print(src);
System.out.println("\n");
}
}
/**
*
* @author Nageswara Rao. V
* @version 1.0 date : June 8, 2011
*/
public class InsertionSort {
public static int[] insertionSort(int[] src) {
for(int pos = 1; pos < src.length; pos++) {
int i = pos;
while((i>0) && (src[i] < src[i-1])) {
swap(src, i, i-1);
i = i-1;
}
}
return src;
}
public static void swap(int[] src, int start, int end) {
src[start] = src[start]+src[end];
src[end] = src[start] - src[end];
src[start] = src[start] - src[end];
}
public static void print(int[] src) {
for(int i=0; i < src.length; i++) {
System.out.print(src[i]+" ");
}
}
public static void main(String args[]) {
int[] src = {4, 3, 8, 2, 1, 0};
System.out.println("\nSource");
print(src);
insertionSort(src);
System.out.println("\nResult");
print(src);
System.out.println("\n");
}
}
No comments:
Post a Comment