排序的稳定性,排序稳定对于某些特殊需求来说是至关重要的。
内排序与外排序:将排序记录全部放置在内存中就是内排序,外排序需要在内外存之间多次交换数据才能进行。
内排序分类:插入排序,交换排序,选择排序,归并排序。
插入排序类:直接插入排序,希尔排序
选择排序类:简单选择排序,堆排序
交换排序类:冒泡排序,快速排序
归并排序类:归并排序
简单排序:冒泡,简单选择,直接插入
改进算法:希尔,堆,归并,快速
从平均水平来看,改进算法优于简单算法。从待排序记录来说,待排序的个数越小,采用简单排序方法更合适,反之,个数越大,采用改进排序方法越合适。
综合各种目标,经过优化的快速排序是性能最好的排序算法。但是我们应该依据不同的场合使用不同的算法。