排序算法是最常见,最基础的算法,作者文集中记录了两种排序算法(插入排序,归并排序)
插入排序算法实现很简单直接,附图
图片引用自算法导论原书第三版
由图可见,该算法是对数组进行遍历,每一次循环都把0到i的数据进行排序,最后得到一个排序好的数组。
那么这种算法效率如何呢?让它对一个元素个数为5000,由大到小的数组进行从小到大排序,来看一下运行时间
花了将近1秒的时间,并不是很理想,另一篇文章将讲述归并排序
github链接:https://github.com/zizhouwang/InsertSort