基本思想
将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。
###要点
设立哨兵,作为临时存储和判断数组边界之用。
算法的实现
1 | package com.zyg.sort; |
效率
时间复杂度
平均情况:O(n2)
最好情况:O(n)
最坏情况:O(n2)
空间复杂度
O(1)
稳定性
稳定
将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。
###要点
设立哨兵,作为临时存储和判断数组边界之用。
1 | package com.zyg.sort; |
平均情况:O(n2)
最好情况:O(n)
最坏情况:O(n2)
O(1)
稳定