情况就是这样。
我有一些包含以下内容的对象:
long
long
string
代码这些对象longs
是顺序的。
例如:
var obj1 = new {From = 0, To = 16777215, Code = "aaa"};
var obj2 = new {From = 16777216, To = 16777471, Code = "bbb"};
这样有近150,000个对象。
目前我将所有内容存储在SQL表中。
问题是我需要从此列表中搜索。例如,我需要查找编号为16777470的对象,该对象将是对象2“bbb”。
问题:有没有一种有效的方法可以在内存中存储这么多的对象,并且能够在其中寻找元素,有一个长的并且寻找最接近的元素?
答案 0 :(得分:0)
从记忆效率的角度来看,我不确定。
思考:您当然也不想搜索整个列表,因此可能需要某种二级结构(某种索引或查找????)。
无论如何我偶然发现了这个: How to get the closest number from a List<int> with LINQ?
怀疑这种方法可能有点处理器,因为它没有二级索引。
希望这有帮助。