【发布时间】:2014-06-16 22:31:46
【问题描述】:
所以我需要按数字顺序对字符串向量进行排序。我正在使用sortfunction,它几乎可以工作。假设我有已转换为字符串的数字 10, 20, 5, 200, 50, 75。 sort 函数对它们进行排序,如下所示:10, 200, 25, 5, 50, 75。所以它只是对我想的第一个字符进行排序?有没有一种简单的方法让它比第一个字符排序更多?是的,它们必须转换为字符串以供我使用。
谢谢!
【问题讨论】:
-
排序算法的性能有多重要?简单的答案是使用
boost::lexical_cast之类的东西对底层整数值进行排序。 -
可能是在做字符串比较。你可以在它仍然是整数向量的时候对其进行排序吗?
-
@Chad 不是很关键。这是一个非常非常小的向量。它最多可以包含 20 个元素。
-
对于 20 个元素,任何事情都会发生...转换、排序和转换,或者即时排序转换...可能不值得开发专门的比较器来优化它。