插入排序的思想是:
从待排序列的第二个元素开始,依次和前面已经排好序的元素对比,直到遇到一个比需要插入的元素大(小)的元素停止,那么这个元素(含)之前的元素就是有序的了,依次进行后面元素的排序。
时间复杂度:O(n)---O(n2),平均复杂度O(n2)
插入排序是稳定的。
希尔排序的思想是:
希尔排序是对插入排序做的优化,插入排序在元素本身有序的时候会效率很高,希尔排序的思想就是,能不能在数据量比较小的情况下,做个排序,后面数据量比较大了,就可以利用插入排序的优点进行排序。
但是我细细想想:这在最后一次步长为1的时候,是可以有部分已经有序了,但是问题在于,步长不为1的时候的排序也是要有时间消耗的,所以就没有搞明白希尔排序的精华,就比如快排,快排的精华在于可以把序列一分为二,这样可以减少对比次数。
希尔排序是不稳定的。