C++ sort()排序详解
sort()简介
在头文件\#include<algorithm>
中,algorithm意思是算法,sort()函数是类似于快速排序,时间复杂度为n*log2(n),执行效率较高。但是sort()并非只是普通的快速排序,除了对普通的快速排序进行优化,它还结合了插入排序和堆排序。根据不同的数量级别以及不同情况,能自动选用合适的排序方法。
基本使用方法
sort(begin, end, cmp)
- begin为指向待sort()的数组的第一个元素的指针
- end为指向待sort()的数组的最后一个元素的下一个位置的指针
- cmp是排序准则,可以不写,默认从小到大
- 在排序过程中,
std::sort()
在对元素进行比较时会调用排序准则函数。根据std::sort()
的实现方式,它会多次调用比较函数来判断两个元素的顺序,然后根据比较结果来交换它们的位置,从而实现排序。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 璃雲の部屋!