在C++排序中,最常用、最好用的有
冒泡排序(bubble sort),时间复杂度为O(n^2);
鸡尾酒排序(Cocktail sort,双向的冒泡排序),时间复杂度为O(n^2);
快速排序(Quick sort,是对冒泡排序的一种改进),时间复杂度下界为O(nlogn),最坏情况为O(n^2);
插入排序(insertion sort),时间复杂度为O(n^2);
希尔排序(Shell Sort,插入排序的一种,也称缩小增量排序),时间复杂度为O(nlog n) ;
选择排序(selection sort),时间复杂度为O(n^2);
堆排序(Heap sort,选择排序的一种。),时间复杂度为O(nlog n);
归并排序(Merge sort),时间复杂度为O(nlog n);
基数排序(radix sort),时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数
在C++中有排序函数sort(),包含在<algorithm> 中,参数格式为
sort(a+begin,a+end);
其中begin表示所需要排序的数组a的开头,end则表示所需要排序的数组a的最后一个元素的位置。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。