在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的最后一个元素的位置。