Tim*_*Tim 2 java sorting string algorithm performance
例如,如果我从字符串"dcab"开始,我想要一个接受该字符串并从中生成字符串"abcd"的函数.同样"猫"应该产生"行为".我试图想出一个有效的方法来做到这一点.谢谢你的帮助.
Dan*_*den 12
最快的方法(特别是如果你有一个相当小的字母表,而不是所有的Unicode)将是一个Pigeonhole排序.
请注意,对于非常大的字符串,这将比(IIRC)合并排序快得多Arrays.sort(),因为Arrays.sort()它在O(n log n)时间上运行,而Pigeonhole排序在O(n + N)时间上运行,其中n是元素N的数量,是字母元素的数量.