我正在尝试获取 java 中百万单词列表中存在的子字符串的数量。循环遍历每个字符串以检查前一个值是否包含下一个值似乎存在重大性能问题。如果单词数较少,它可以很好地工作,但是当涉及到一百万个单词的巨大列表时,需要很长时间才能返回计数。有人可以告诉我最快的方法吗?
最佳答案
我想你可以在2N时间内得到它。
- 循环抛出所有列表并将字符串连接成一个或将其逐行放入文件或某物中。您可以获得包含所有单词的 ONE_BIG 字符串。如果字符串太大,请使用文件并通过unix运行regexp。
- 循环抛出所有单词,并对 ONE_BIG 上的单词使用正则表达式并对其进行计数。
这是我的简单想法。但也许有人有更好的。我怀着好奇心等待着。
关于java - 从一百万个单词的列表中获取子字符串的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21649959/