作品说明
排序算法,顾名思义,将一个列表按大小进行排列
给小白的算法优缺点分析:
冒泡排序:经典算法,写起来简单,但是效率低,建议初学者使用
选择排序:经典算法,写起来简单,但是效率低,建议初学者使用
直接插入排序:经典算法,写起来简单,平均效率低,但是排列已经较为有序的数列会极快
快速排序:顾名思义,速度较快,并且不需要多余空间,为主流排序算法
归并排序:非常稳定,效率和快速排序基本相同,但是需要另外一个列表进行合并操作
希尔排序:速度较前两者差不多,适合中、短的的数列
计数排序:不基于比较,适合跨度小的长数列,速度会极快,但是只能排整数
堆排序:速度和快速排序、归并排序基本相同,且效率非常稳定,适合超长、完全随机、跨度大的数列
地精排序:只需要一层循环,写起来比开始的三个还要简单,但是效率和开始的三个一样低
鸡尾酒排序:冒泡排序的变形,比冒泡排序稍快,和直接插入排序一样,原数列越有序,排序越快
基数排序:排序最大位数较短的数列极快,但是只能排整数
梳排序:和希尔排序相类似
内省排序:C++函数库中排序法,速度较快较稳定