[英]Find equivalent String in huge Compilation of Strings
我编写了一个C#程序,其中包含由标头列表组成的解析数据,该标头又包含一个用字符串表示的ID列表。
电子邮件:List <Headers>; 标题:列表<ID>
//一个随机ID(大约100,最多2000)唯一地标识索引中的一个标头。 我将解析后的所有ID上载到服务器,服务器再在索引中搜索ID,删除相应的标头,并写入日志文件,其中包含已删除的ID和未包含在索引中的ID。
我的下一步是解析LogFile中已删除的ID,并在我的编译中找到等效的ID,并将其标头标记为Deleted。
Logparsing的结果是一个数组,其中包含所有成功删除的ID。
所以看起来像这样:
foreach(string deletedID in deletedIDs){
foreach(EMail mail in mails){
foreach(Header header in mail.headers){
if(header.Deleted == false){
for(string iD in header) {
if(deletedID == iD) header.Deleted = true;
}
}
}
}
}
我想知道是否有更有效的方法(甚至更多方法)来执行此操作
在这里,使用字典将ID
作为关键字并使用Email
或Header
作为值来保存数据似乎是合理的。 这使您的搜索几乎是瞬时的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.