Algorithm Microsoft使用哪种排序算法';s STL::list::sort()?

Algorithm Microsoft使用哪种排序算法';s STL::list::sort()?,algorithm,visual-c++,sorting,stl,Algorithm,Visual C++,Sorting,Stl,注意:我无意中发布了没有指定我正在使用哪个STL实现的帖子,我觉得它不能真正更新,因为它会使大部分答案过时 不能使用内卷排序——内向排序不稳定,而List.StU.()/Cuff>需要稳定。@斯蒂芬艾格蒙特:C++标准的第23.2.2.4/31节。您正在查看的文档是std::sort,而不是std::list::sort。@Stephan Eggermont:这是关于std::sort(),而不是std::list::sort()std::sort()不稳定,但不允许std::list::sor

注意:我无意中发布了没有指定我正在使用哪个STL实现的帖子,我觉得它不能真正更新,因为它会使大部分答案过时

<正确的问题是——假设我使用微软Visual C++的STL库,下面的代码中使用了哪种排序算法?
list<int> mylist;

// ..insert a million values

mylist.sort();
列出mylist;
//…插入一百万个值
mylist.sort();

据我所知,它是一款入门软件:

至少在最新版本(例如VC++9.0/VS 2008)中,MS VC++使用了合并排序。

只是为了不必依赖二手信息,排序代码就在
列表
标题中-大约有35行


似乎是一种修改的迭代(非递归)合并排序,最多有25个存储箱(我不知道这种合并排序变体是否有特定名称)。

MSVC6附带的STL是p.J.Plauger版本的库(Dinkumware),它在
std::list::sort()中使用了合并排序。我不知道MS的包的后面版本。

<代码>清单.SoTo()/Cyto>不能使用内卷排序——内向排序不稳定,而List.StU.()/Cuff>需要稳定。@斯蒂芬艾格蒙特:C++标准的第23.2.2.4/31节。您正在查看的文档是std::sort,而不是std::list::sort。@Stephan Eggermont:这是关于
std::sort()
,而不是
std::list::sort()
<允许code>std::sort()
不稳定,但不允许
std::list::sort()
std::list::sort()
不稳定。