我的问题与this有关,因为我解决了这个问题,我写了自己的排序算法(简单的插入排序),并且它可以工作。我对此非常惊讶,因为我认为标准库经过了充分测试。是否有任何已知的特殊情况,std::sort
可能会搞砸?std :: sort可能导致错误吗?
-1
A
回答
6
不,在任何常见的C++标准库实现std::sort
中都不存在任何已知的错误。它经过严格测试。
如果您看到崩溃或不正确的结果,那几乎肯定是因为您没有遵守合同:要么您传递了无效参数,要么您的比较器不遵守strict weak ordering(不反射,不对称,传递性,等价性的传递性)。
1
相关问题
- 1. GCC std :: sort与lambdas的错误行为
- 2. C++ std :: set插入导致段错误
- 3. std :: string :: assign()导致段错误
- 4. JSP错误页面可能导致问题吗?
- 5. 一对一的双向调查可能导致OutOfMemory错误吗?
- 6. C++ std :: sort on std :: vector <Object> - 错误太多
- 7. HowTo sort std :: map?
- 8. 什么可能导致这个PHP错误? PHP中的错误?
- 9. 为什么glGetString(GL_VERSION)可能导致Seg错误?
- 10. Javascript Ajax可能导致死锁吗?
- 11. 可可 - `stringWithContentsOfURL/dataWithContentsOfURL`会导致错误?
- 12. 导致错误
- 13. 导致错误
- 14. 导致错误
- 15. C++代码导致可能的控制台输出错误
- 16. std :: sort on std :: vector <std::string>
- 17. 功能date_sunrise()返回错误的时间,并可能导致
- 18. std :: unordered_map中可能存在的错误
- 19. 有什么可能导致“服务不可用503”错误?
- 20. operator = on指针可能导致mac上的段错误
- 21. NSNotificationCenter可能导致错误。你知道更优雅的解决方案吗?
- 22. 我可以防止Facebook RSS源导致JavaScript语法错误吗?
- 23. 我可以导致CMake内部错误吗?
- 24. session_start()导致致命错误
- 25. “fread”导致段错误的功能
- 26. MATLAB的功能imfill()导致错误
- 27. 导致减少功能错误
- 28. 什么能导致这个Firebug错误?
- 29. std :: list :: sort与自定义比较器的分段错误?
- 30. 导致fcgi错误
如果你的比较器不是自洽的,那么你可能会遇到麻烦。 –
你是什么意思的自我一致? – Sim
如果使用(a,b)和(b,a)调用比较器时没有给出一致的答案,则可能会遇到麻烦。如果(a,b)返回true,则(b,a)最好返回false。 –