【发布时间】:2014-11-02 08:59:07
【问题描述】:
我需要按 ASCII 和长度对大约 100000 个字符串进行排序,我通过将其放入字符串长度处的 2D 向量中来按长度排序,然后使用快速排序(用于 ASCII)对每个数组进行排序。但是对于等长的字符串有更快的排序吗?我听说基数很棒,但我觉得很难理解。不使用 sort() 函数对等长字符串进行排序的最佳方法是什么?如果您需要代码,我可以发布它。
【问题讨论】:
-
"ASCIIbetically" - 不错 :-)
-
这是一件事,我发誓 =]
-
我没有得到你想要达到的目标。也许一个简短的例子会有所帮助。
-
好的,所以我们得到了大约 100000 个字符串,我们必须以尽可能最快的方式对这些字符串进行 n 次排序。所以说,“那块拼图更高”最终会成为“那块更高的拼图”。我只是在寻找一种更快的方法来以这种方式对字符串进行排序。
-
你读过这篇文章吗:Engineering Radix Sort for Strings?在优化字符串的基数排序方面付出了很多努力。