最近这段时间比较忙,几乎都忘了写博客这件事情,今天周末下着小雨,坐在桌前不知该干啥,就想起了把之前写的东西继续写下去。废话不多说,今天给大家介绍一下插入排序,直接进入主题。
插入排序思想:从第二个位置开始插入,依次与该数据之前所有数据进行比较,数据比该数据大,数据往后顺移。否则该数据插入到第一个比该数据小的数据后面。
是不是比较绕口,比较难理解?解释一下:“该数据”指的要插入的数据。下面通过图与文字来说明插入排序的思想。
同样以5个数据为例。数据为:8、5 、2 、6 、1。由于排序思想中涉及到顺移,数组顺移会覆盖数据,因此需要一个变量记录“该数据”。
第一次比较过程:
从第二位置开始插入:第二个位置的数据为5,5也就是“该数据”。
依次与该数据之前所有数据进行比较:5是第二个位置数据,也就是说5要与第一个位置上的数据进行比较。
数据比该数据大,往后顺移:数据指的是8,8比5大。8往后顺移,即8移到第二个位置。那么5也就排在第一个位置。