基本思想:
将一个记录数据插入到已排好序列的有序表中(有序表至少2个元素),得到一个排好序列的表。整个排序过程进行n-1趟插入。第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从后向前扫描,把第三个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。
性质:具有稳定性
代码实现
特别注意:
- 算法为双重循环,内循环为每一趟排序算法,外循环为记录数据(需要排序的数据从第三个数据开始)
- 循环结束,表明插入位置为 j+1
将一个记录数据插入到已排好序列的有序表中(有序表至少2个元素),得到一个排好序列的表。整个排序过程进行n-1趟插入。第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从后向前扫描,把第三个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。
特别注意: