【发布时间】:2010-03-15 05:09:48
【问题描述】:
我正在寻找一种节省时间的方法来将文件列表解析为树。可能有数亿个文件路径。
蛮力解决方案是在出现目录分隔符时拆分每个路径,并通过进行字符串比较来遍历添加目录和文件条目的树,但这会非常慢。
输入数据通常按字母顺序排序,因此列表类似于:
C:\Users\Aaron\AppData\Amarok\Afile
C:\Users\Aaron\AppData\Amarok\Afile2
C:\Users\Aaron\AppData\Amarok\Afile3
C:\Users\Aaron\AppData\Blender\alibrary.dll
C:\Users\Aaron\AppData\Blender\and_so_on.txt
从这个顺序中,我的自然反应是将目录列表分成组......不知何故......在进行慢速字符串比较之前。我真的不确定。我会很感激任何想法。
编辑:如果可能的话,如果这棵树从上到下延迟加载会更好。
【问题讨论】:
-
为什么你认为它会特别慢?如果有 n 行,并且每行最多 m 个字符(因此有
-
你可以在这里找到帮助,stackoverflow.com/questions/45687209/…
标签: performance directory tree