每天我收到一个30-40k行的列表,每行包含有意义或无意义的名称,如fastcar,ultrafastcar,blablablacar等。
我还有一个大的列表,其中包含任何语言的所有单词(大约50k行)。
我想比较第一个列表和第二个列表,以便过滤包含(或以 - 结尾)第二个列表中的单词的内容。我的意思是如果说" ultrafastcar"然后它不会被过滤但是" blablacar"将被过滤掉。
我准备了一些Java代码,但比较列表需要很长时间。我使用了ArrayLists并将它们与contains(),startsWith()方法进行了比较。 ArrayLists是否正确选择以及我可以使用哪些算法来比较它们,除了这些方法。
答案 0 :(得分:0)
您可以尝试使用第二个列表实现三元搜索树,然后检查树中的单词是否存在于树中。