当前位置: 首页 > 知识库问答 >
问题:

更快的长公共前缀字符串排序?

凤高澹
2023-03-14

我有一套弦。其中90%是以“http://www.”开头的URL。我想按字母顺序排序。

对于这个问题,有没有比普通的快速排序/基数排序更好的算法?

共有1个答案

曾嘉瑞
2023-03-14

我怀疑,当考虑URL的平均长度时,您试图利用每个URL大约10个字符的常见前缀所花费的处理时间甚至不会为其本身付出代价。

只需尝试完全标准的排序。如果这还不够快,可以考虑并行化或分发完全标准的排序。这是一个简单的方法,将发挥作用。

 类似资料:
  • 问题内容: 我有一个像这样的数组: 我想找到字符串的最长公共前缀。在这种情况下, 我以为我会遵循这个程序 问题 是否有内置函数或更简单的方法? 对于我的5行数组来说可能还不错,但是如果我要做几千行数组,那么将会有很多开销,所以我必须使用起始值进行移动计算,例如=字符串的一半,如果它失败,然后直到它起作用,然后再递增1直到我们成功。这样我们就可以进行最少的比较以获得结果。 是否已经有解决此类问题的公

  • 问题内容: 是否有一个regexp可以找到两个字符串的最长公共前缀?而且如果一个正则表达式无法解决这个问题,那么使用正则表达式(perl,ruby,python等)中最精美的代码或oneliner就是什么。 PS:我可以通过编程轻松地做到这一点,我只是想好奇,因为在我看来这可以通过正则表达式解决。 PPS:使用正则表达式的O(n)解决方案可获得额外奖励。来吧,它应该存在! 问题答案: 如果有些字符

  • 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。 说明: 所有输入只包含小写字母 a-z 。 话不多说,上code: /** * @param {stri

  • 公共路由前缀 To set default path (route prefix), use setGlobalPrefix() method of INestApplication object. Example: 使用INestApplication对象的setGlobalPrefix()方法可以设置默认路径(route prefix)。 const app = NestFactory.cre

  • 问题内容: 我正在寻找一个Python库,用于从 一组字符串中 找到最长的公共子 字符串 。有两种方法可以解决此问题: 使用后缀树 使用动态编程。 实施的方法并不重要。重要的是,它可以用于 一组字符串 (不仅是两个字符串)。 问题答案: 这些成对的函数将在任意字符串数组中找到最长的公共字符串: 毫无疑问,该算法可以得到改进,而且我对Python的接触也很少,因此也许它在语法上也可能更有效,但是它应

  • 正如维基所说: 一组字符串的最长公共子字符串可以通过为字符串构建一个通用后缀树来找到,然后从其下方子树中的所有字符串中找到具有叶节点的最深内部节点 正如贾斯汀所说: 在(紧凑的)后缀树中,您需要找到最深的内部节点,这些节点包含所有字符串中的叶节点。如果在同一深度有多个节点,则必须比较该节点表示的字符串长度。i、 e.ABC、BC和C都有相同的深度,因此您必须比较ABC、BC和C字符串的长度,看看哪