我正在处理数十万个文件,
我必须逐一处理这些文件, 为此,我需要记住已经处理过的文件。
我能想到的就是strong将每个文件的文件路径放在一个lo----ong数组中,然后每次检查是否重复。
但是,我认为应该有一些更好的方法,
我是否可以生成一个 KEY(这是一个数字)或其他东西,只记住所有已处理的文件?
最佳答案
您可以使用某种哈希函数(MD5、SHA1)。
伪代码:
for each F in filelist
hash = md5(F name)
if not hash in storage
process file F
store hash in storage to remember
参见 https://www.rfc-editor.org/rfc/rfc1321对于 MD5 的 C 实现
关于algorithm - 有没有一种方法可以生成一个单一的键来记住我们遇到的所有字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4141457/