希尔排序(Shell`s Sort)可以看成是在插入排序的基础上,利用插入排序基本有序效率高的特性,将元素分组,进行排序。
for(step=n/2; step>0; step/=2)
for(i=step;i<n;i++)
for(step)将数组分为N/2组,然后慢慢缩量,最终汇成一组进行总插入排序;
for(i)如同插入排序,将元素在组内进行排序;
参考学习
白话经典算法系列之三 希尔排序的实现
http://blog.csdn.net/morewindows/article/details/6668714
性能分析
平均时间复杂度O(nlog2n)
空间复杂度:O(1)
稳定性:不稳定