直接插入排序算法图解

「这是我参与11月更文挑战的第5天,活动详情查看:2021最后一次更文挑战

前言

 大家好,我是程序猿小白 GW_gw,很高兴能和大家一起学习进步。
复制代码

排序算法有很多,今天我们就来一起学习众多排序算法中的直接插入排序,之后循序渐进学习更难理解的算法。

以下内容部分来自于网络,如有侵权,请联系我删除,本文仅用于学习交流,不用作任何商业用途。

摘要

 本文主要介绍直接插入排序算法的主要思想和具体实例图解,帮助读者快速理解插入排序。
复制代码

直接插入排序

算法思想

把第一个元素当作已排序的元素,然后从未排序的元素中依次选择元素和前面已排序的元素比较,如果比前面小并且前面还有元素就把前面的元素往后挪,最后把该元素放到停下的位置。

图解实例

本例为从小到大排序。
image-20211106222746373

2是已排序元素,接着从未排序元素中依次选择元素。接着选择5,5比2大,那就不改变.第一轮结束。

已排序元素:

image-20211106223431687

开始第二轮,6比5大,不改变,第二轮结束。

已排序元素:

image-20211106223522547

开始第三轮,3比6小并且6前面还有元素,把6往后挪。3比5小,并且前面还有元素,5往后挪。3比2大,停止比较。把3放到正确的位置。第三轮结束。

image-20211106224002995

已排序元素:

image-20211106224041182

开始第四轮,5比6小并且6前面还有元素,6往后挪,5和5相等,停止比较。把5放到正确位置。

image-20211106224259015

完成排序:
image-20211106224323258

结语

以上就是直接插入排序算法的主要思想和实例图解,希望对读者有所帮助。如果觉得有用,欢迎点赞关注,一起相互学习进步。