算法系列之插入排序
Posted 跟马哥学编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法系列之插入排序相关的知识,希望对你有一定的参考价值。
算法系列之插入排序
01
基本概念
插入排序算法为《数据结构和算法》的知识范畴,由于该算法的核心理念是将样本数列中每个元素取出并插入到适当的位置从而完成排序,因此得名为"插入排序"。
02
算法流程
若只看第一个元素,则可以认定该元素已经有序。
取出下一个元素,使用取出的元素与左边的有序数列从右向左依次比较。
若取出的元素小于左边的元素则将左边的元素右移,也就是赋值到下一个位置。
若取出的元素大于等于左边的元素,则将取出的元素插入到左边元素的右边。
重复步骤b,直到处理完毕所有元素为止。
03
算法分析
04
编程实现
05
算法优化
上述代码实现已经完成了插入排序的功能,但若被该算法处理的样本数列已经是从小到大排列却不知情的情况下,由上述算法处理时会出现多次元素自己给自己赋值的情况,因此应该对此算法进行优化处理,减少赋值的次数从而提高算法的性能,具体方式如下:
06
结束语
本文介绍的插入排序属于稳定的排序算法,希望通过我的讲解大家能够深刻理解并掌握此算法。
由于本人周一到周五全天授课,因此一周发文一篇,量不在多而在于精,有希望更快更多学习的小伙伴欢迎来现场感受小马哥的魅力。
小马哥专业扫盲很多年,不怕学不会就怕你不学,欢迎随时来勾搭。
以上是关于算法系列之插入排序的主要内容,如果未能解决你的问题,请参考以下文章