You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
#### 一、基本思想:
|
|
|
|
|
每一步将一个待排序的对象,按其关键码大小,插入到前面已经排好序的一组对象的适当位置上,直到对象全部插入为止。
|
|
|
|
|
即边插入边排序,保证子序列中随时都是排好序的。
|
|
|
|
|
|
|
|
|
|
#### 二、基本操作:
|
|
|
|
|
在有序序列中插入一个元素,保持序列有序,有序长度不断增加
|
|
|
|
|
|
|
|
|
|
+ a[0] 是长度为1的子序列,然后逐一将a[1]至a[n-1]插入到有序子序列中;
|
|
|
|
|
+ 在插入a[i]前,数组a的前半段{a[0]~a[i-1]}是有序段,后半段{a[i]~a[n-1]}是停留于输入次序的“无序段”;
|
|
|
|
|
+ 插入a[i]使a[0]~a[i-1]有序,也就是要为a[i] 找到有序位置j(0<=j<=1),将a[i] 插入在a[j] 的位置上
|
|
|
|
|
![[微信截图_20221223162033.png]]
|
|
|
|
|
|
|
|
|
|
#### 三、寻找插入位置
|
|
|
|
|
![[微信截图_20221223182150.png]]
|
|
|
|
|
###### 如何寻找插入位置???
|
|
|
|
|
+ 顺序法:定位插入排序
|
|
|
|
|
+ 二分法:定位插入排序
|
|
|
|
|
+ 缩小增量:多遍插入排序
|