Shell排序的递增序列

希尔排序的效率取决于算法中的递增序列,下面记下两种实际问题中常用的递增序列,以便以后查阅。
1、
int N = a.length;
int h = 1;
while (h < N / 3) {
h = h * 3 + 1;
}

2、性能比第一种提高百分之20至40。将其存储在数组a中。

int[] a = { 1, 5, 19, 41, 109, 209, 505, 929, 2161, 3905, 8929, 16001, 36289, 64769, 146305, 260609 };
        //是根据 9 x (4的k次方) - 9 x (2的k次方) + 1 和   (4的k次方) - 3 x (2的k次方) + 1 综合得到的

你可能感兴趣的:(Shell排序的递增序列)