环境:Visual Studio 2012
现象:
1、在Debug下,快速排序比归并排序要慢很多(近乎十倍);
数据:
STL表示STL的快速排序
Q表示自己写的QuickSort
M表示自己写的MergeSort
(单位毫秒)
***DEBUG***
STL sort()
1M 2188
10M 24016
Q
1M 1719
10M 20093
M
1M 297
10M 3375
***RELEASE***
STL sort()
1M 110
10M 1266
Q
1M 93
10M 1016
M
1M 140
10M 1656
现象:
1、在Debug下,快速排序比归并排序要慢很多(近乎十倍);
2、在Release下,快速排序比归并排序要快不少;
3、自己实现的快拍要比STL的快排效率快大概15%数据:
STL表示STL的快速排序
Q表示自己写的QuickSort
M表示自己写的MergeSort
(单位毫秒)
***DEBUG***
STL sort()
1M 2188
10M 24016
Q
1M 1719
10M 20093
M
1M 297
10M 3375
***RELEASE***
STL sort()
1M 110
10M 1266
Q
1M 93
10M 1016
M
1M 140
10M 1656
本文通过实验证明了在Visual Studio 2012环境中,不同排序算法的表现差异,特别是快速排序在Debug模式下的表现不及归并排序,而在Release模式下则更为高效。同时,自定义实现的快速排序算法相较于STL的快速排序,效能提升约15%。
80

被折叠的 条评论
为什么被折叠?



