繁体   English   中英

在C#中以最快的速度搜索100,000个元素的列表

[英]Searching through a list of 100,000 elements as fast as possible in C#

我很快将需要使用C#查找具有特定值的元素,以便尽可能快地反复搜索大约100,000个元素的列表(大约每15s)。 使用Linq在List中搜索元素(其中3-4个字段具有特定值)会比使用内存中的SQLite数据库更快吗? 有更好的选择吗?

我不介意在每次执行程序时都重新创建数据库,因此从CSV文件读取数据是可以接受的。

数据集将是数据流中的一个窗口,随后,列表将逐渐更改,从列表的开头删除一条记录,然后每隔15秒将另一条记录添加到末尾。

我有什么选择?

您可以使用名为IndexedList的帮助程序库,也可以从http://indexedlist.codeplex.com/下载该程序库。使用该库,您可以在对象的任何字段上添加索引,然后在列表中执行快速搜索。 默认索引实现使用字典来存储索引数据,您也可以更改它。 我已经为自己的项目创建了这个库,然后我将其作为一个开源项目新发布了。 我很高兴听到您对这个图书馆的反馈。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM