c++ - 在文本文件中查找子字符串的最快方法

标签 c++ algorithm text find path

在文本文件中查找字符串的最快方法是什么?案例场景:在列出了大约 50000 个文件路径的文本文件中查找特定路径(每个路径都有自己的行)。

最佳答案

那个大小的文件应该很容易放入内存,你可以把它变成一个 std::set (或者更好的哈希集,如果你手头有一个库),路径作为它的项目。检查是否存在准确的路径将会非常快。

如果您还需要查找子路径,排序的 std::vector(如果您只查找前缀)可能是唯一有用的方法——或者如果您正在查找完全通用的子字符串paths 那么无论如何你都需要扫描所有的 vector ,但除非你必须这样做无数次,否则也不会太糟糕。

关于c++ - 在文本文件中查找子字符串的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1242947/

相关文章:

c++ - 为什么有些 C/C++ 头文件前面有 "sys/"?

c++ - Windows Universal App 8.1 C++/自定义类属性

java - 双向链表不向后打印

javascript - 使用 JavaScript 创建文本片段

html - 竖排文字方向

c++ - 函数原型(prototype)和函数实现签名不一致地使用 const 可以吗?

c++ - 初始化对象指针数组中的对象

C++:变量不受 Void 函数影响

python - 什么是半径 x 的圆中整数坐标的更快解决方案

python - 如何解决这个字典KeyError?