Shell Sort


public class ShellDemo {

    public static void main(String[] args) {

        int[] a = new int[]{432835841};
        int t, k, n = a.length;
        
        System.out.println("Target array is :");
        for(int i=0;i<a.length;i++){
            System.out.print(a[i]+" , ");
        }        
       
        for (int i = n / 2; i > 0; i /= 2) {
            for (int j = i; j < n; j++) {
                t = a[j];
                for (k = j; k >= i; k -= i) {
                    if (t < a[k - i]) {
                        a[k= a[k - i];
                    else {
                        break;
                    }
                }
                a[k= t;
            }
        }

        System.out.println(" ");
        System.out.println("Sorted array is:");
        for (int i = 0; i < 5; i++) {
            System.out.print(a[i]+" , ");
        }

    }
}

Output:
Target array is :
43 28 35 84 

Sorted array is:
28 35 43 84 ,