【基础】排序算法总结

参考: 九大基础排序总结与对比

 

常见排序算法:冒泡排序,插入排序,快速排序,归并排序,选择排序,堆排序,桶排序,基数排序,希尔排序,计数排序

 

占用额外内存:归并排序,桶排序,计数排序,基数排序

 

不稳定:选择排序,快速排序,堆排序,希尔排序

上面链接中的对比图,比较清楚:

再加一点:

基数排序(Radix sort)是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。

利用多关键字先达到局部有序,再调整达到全局有序。

 

计数排序:假设数序列中小于元素a的个数为n,则直接把a放到第n+1个位置上。当存在几个相同的元素时要做适当的调整,因为不能把所有的元素放到同一个位置上。计数排序假设输入的元素都是0到k之间的整数

 

posted @ 2016-09-02 10:26  长安L  阅读(124)  评论(0编辑  收藏  举报