【发布时间】:2017-02-02 15:08:51
【问题描述】:
我一直在为我的算法期中学习,我在书中遇到了一个关于对可变长度项目进行排序的问题:
- 给定一个字符串数组,其中不同的字符串可能有不同的字符数,但所有字符串的字符总数为 n。展示如何在 O(n) 时间内对字符串进行排序。
我在网上找到了很多答案,但他们的解释不是很清楚,所以如果你能花时间更深入地向我解释这个答案建议应该做什么来对 O 中的字符串进行排序,我将不胜感激(n) 时间:
- 按长度对字符串进行分组并对组进行排序
- 从最大长度开始 i 并下降到 1,执行计数 按第 i 个字符排序。确保仅包含具有 第 i 个字符。 如果这些组是原始数组中的后续子数组,我们执行
【问题讨论】:
-
(你应该明确这是关于具有可变长度键的项目还是关于具有可变长度的项目,这可能使“交换”成为挑战。)
标签: arrays string algorithm sorting