shell排序算法思想
先将序列转换为若干小序列,在这些小序列内进行插入排序
逐渐扩大小序列的规模,而减少小序列个数,使得待排序序列逐渐处于更有序的状态
最后对整个序列扫尾,直接插入排序,从而完成排序
shell排序的java代码
算法分析:
不稳定
空间代价:O(1)
时间代价:
O(n^2)
选择适当的增量序列可以使时间代价接近于O(n)
shell排序算法思想
先将序列转换为若干小序列,在这些小序列内进行插入排序
逐渐扩大小序列的规模,而减少小序列个数,使得待排序序列逐渐处于更有序的状态
最后对整个序列扫尾,直接插入排序,从而完成排序
shell排序的java代码
算法分析:
不稳定
空间代价:O(1)
时间代价:
O(n^2)
选择适当的增量序列可以使时间代价接近于O(n)