基本思想:构建有序序列,对于未排序的数据,在已排序序列中从后向前扫描,找到相应位置插入。
具体过程:
(1)对于第一个元素,因没有比较,将其作为已有序序列,
(2)从数组获取下一个元素,在已排序序列中从后向前扫描,进行判断,
(3)若有序序列的元素大于新元素,则将该新元素移到下一位置,
(4)重复步骤(3),直到找到已排序元素小于或等于新元素的位置,
(5)将新元素插入到该位置
(6)重复步骤(2)~(5)。
c++代码实现
1.CreatData.cpp
2.InsertSort.cpp
3.TestMain.cpp
主要编写InsertSort.cpp,其余与前类似
直接插入排序