http://www.cricode.com/3212.html
public class ShellSort { public static void main(String[] args){ int[] array = {2,6,1,9,4,3,23,65,0,7}; System.out.print("the array before is:"); for(int i = 0; i < array.length; i++){ System.out.print(array[i]+" "); } System.out.println(" "); System.out.println("the array after is:"); shellSort(array); } private static void shellSort(int[] array){ int len = array.length; int increment = len/2; while(increment >= 1){ for(int i = 0; i < len; i++){ for(int j = i; j < len; j = j + increment){ if(array[i] > array[j]){ int temp = array[j]; array[j] = array[i]; array[i] = temp; } } } increment = increment/2; for(int i = 0; i < array.length; i++){ System.out.print(array[i]+" "); } System.out.println(" "); } } }