algorithm - visual c++在std::sort中使用什么排序算法

标签 algorithm sorting visual-c++ stl

我已经搜索了一段时间,但我找不到 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/

相关文章:

algorithm - 阿克曼函数的用途?

javascript - 将图像随机放置在 <div> 中并确保均匀分布

ruby - 按值对哈希进行排序时如何保留键的字母顺序

c++ - 多重定义,这里已经定义

c++ - 创建一个包含其父类的所有功能的类,除了一个

c# - 如何修复代码以便 C# 中的斐波那契搜索算法正常​​工作

c# - 大集合Server和Path的排序算法

python - 使用列表与由函数创建的列表

c++ - STL 排序是使用交换还是二进制复制?

c++ - 为桌面应用程序发送 http 请求的最佳库是什么