算法 -排序思想
对于一组数据排序
算法使用环境不一样,需要选更优的算法
1、是否包含大量重复元素? -->三路快速排序,否则普通快速排序
2、是否近乎有序?-->插入排序
3、是否取值范围有限?-->计数排序(利用数组下标来确定元素的正确位置。)
4、是否需要稳定排序?-->归并排序,否则快排
5、是否使用链表存储? -->归并排序
6、数据量级是否超过内存?-->堆排序或外部排序
对于一组数据排序
算法使用环境不一样,需要选更优的算法
1、是否包含大量重复元素? -->三路快速排序,否则普通快速排序
2、是否近乎有序?-->插入排序
3、是否取值范围有限?-->计数排序(利用数组下标来确定元素的正确位置。)
4、是否需要稳定排序?-->归并排序,否则快排
5、是否使用链表存储? -->归并排序
6、数据量级是否超过内存?-->堆排序或外部排序