如何在线性时间内对长度为k的单词进行排序?

时间:2018-03-18 22:27:48

标签: algorithm sorting computer-science

我想实现一个算法来排序长度为k的n个单词,这些单词只包含英文单词(所以来自a-z)。

我尝试通过投射单词的第一个元素来使用计数排序 - &gt;字符到它的整数表示,然后使用计数排序(线性时间排序),这种工作,但它只排序第一个字符,即当两个或多个单词具有相同的第一个字符,然后他们没有按第二个字符排序?< / p>

有人可以指导我或者给我一个提示,让我在线性时间内对这n个单词进行排序吗?

1 个答案:

答案 0 :(得分:1)

Radix sort可能是要走的路 - 它会按照第i个字母对每个单词进行稳定排序。既然你正在使用角色,那么你基本上已经在相应的基数中工作了!