我已经搜索了一段时间,但我找不到 visual c++ 对 std::sort 函数使用什么算法,我知道 GNU 标准 C++ 库使用 Introsort,但似乎没有是任何消息来源说微软的 visual c++ 使用哪一个!
最佳答案
使用来源 Luke :) 它的快速排序(MSVC 2013)或有时堆排序甚至插入排序(基于容器的大小)
template<class _RanIt,
class _Diff> inline
void _Sort(_RanIt _First, _RanIt _Last, _Diff _Ideal)
{ // order [_First, _Last), using operator<
_Diff _Count;
for (; _ISORT_MAX < (_Count = _Last - _First) && 0 < _Ideal; )
{ // divide and conquer by quicksort
关于algorithm - visual c++在std::sort中使用什么排序算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22885065/