使用什么排序方法:快速排序,桶排序,基数,...用于微小数据对?(C++)

pol*_*lux 4 c++ sorting performance benchmarking

我需要优化一些代码来排序a vector<pair<int, float >>需要在float值上排序的位置.该向量的长度介于0和5之间.我一直在谷歌搜索并阅读C++中的排序方法,但无法找到有关排序微小数据集的任何基准.对于系统来说,重要的是尽可能快,因为它用于实时blob跟踪系统.

亲切的问候,Pollux

Nic*_*kis 6

插入排序冒泡排序非常适合微小数据对.

另一个选择是使用几个if语句对比较逻辑进行硬编码.
查看对7个整数数组进行排序的最快方法是什么?一些想法.


sbi*_*sbi 5

阅读基准测试是没有意义的.您可以阅读并比较算法的复杂性(Big-O),因为它仅取决于算法本身,但基准测试取决于太多因素.

您需要在对应用程序用户重要的环境中使用您使用的工具为自己进行基准测试.