public void shellSort(int[] array) {
int d = array.length;
int k, i, j;
while (d >= 1) {
for (k = 0; k < d; k++) {
for (i = 0; i < array.length; i = i + d) {
int t = array[i];
for (j = i - d; j >= 0 && array[j] > t; j = j - d) {
array[j + d] = array[j];
}
array[j + d] = t;
}
}
d = d / 2;
}
}