linux: 运行在VMware workstation中的RedHat
Windows: XP、VS2003。
CRT qsort()
linux: 1000ms
windows: 718ms
STL::sort()
linux: 400ms
windows: 359ms
STL::stable_sort()
linux: 600ms
windows: 422ms
STL::set container (图例缩小10倍)
linux: 3145ms
windows: 10828ms
闲来无事,写了一小段代码,比较各种库函数排序方法的速度,对一百万个随机排列的整数进行排序,大致的结果如图(其中利用set容器排序的速度太低,图表缩小了10倍来表示,否则就只有画到屏幕以外去了)。
从图表可以看出,C++ STL的sort函数最快,就算是stable_sort也比CRT的qsort来得快,至于利用set容器的方法,两种编译器的表现相差很大。