我正在编写一个JAVA程序来搜索Excel文件中的字符串并提取包含该特定字符串的行。我发现所有相关的方法都是逐个查看所有行,并使用.contain()方法判断该行是否包含字符串。但问题是:
一个。有大量的字符串可以匹配。
湾Excel文件非常大。
所以我很好奇是否仍然可以快速搜索Excel文件中的字符串而无需迭代每一行?非常感谢!
答案 0 :(得分:0)
搜索算法通常在未预先排序的列表中具有 O(n)的性能。如果没有给出您正在搜索的Excel文件的信息,则没有比 O(n)具有更好的最坏情况性能的算法。
所以,这意味着,无论如何,都需要迭代每一行直到找到被嘲笑的行。如果要提高性能,可以尝试使用并行化,例如 MapReduce :https://en.wikipedia.org/wiki/MapReduce