如何在 C++ 中实现自然排序算法?
我正在对由文本和数字组成的字符串进行排序.我希望排序将数字部分排序为数字,而不是字母数字.
I'm sorting strings that are comprised of text and numbers. I want the sort to sort the number parts as numbers, not alphanumeric.
例如我想要:abc1def, ..., abc9def, abc10def
For example I want: abc1def, ..., abc9def, abc10def
代替:abc10def, abc1def, ..., abc9def
instead of: abc10def, abc1def, ..., abc9def
有谁知道这方面的算法(特别是在 C++ 中)
Does anyone know an algorithm for this (in particular in c++)
谢谢
推荐答案
我问了 这个确切的问题(尽管在 Java 中) 并指向 http://www.davekoelle.com/alphanum.html,其中有一个算法及其多种语言的实现.
I asked this exact question (although in Java) and got pointed to http://www.davekoelle.com/alphanum.html which has an algorithm and implementations of it in many languages.
相关文章