Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查找布尔型索引的更好结构?_C#_.net_Generics - Fatal编程技术网

C# 查找布尔型索引的更好结构?

C# 查找布尔型索引的更好结构?,c#,.net,generics,C#,.net,Generics,这有点吹毛求疵,我可能忽略了一些简单的事情 有时我有一些整数,必须能够查找它们是真是假。我总是通过使用字典来解决这个问题,插入一个true,然后使用ContainsKey来查看某个内容是否为true(默认情况下为false) 但是,插入一个甚至没有使用过的bool似乎不是一个优雅的解决方案:)您会推荐什么结构?查找性能是主要的,插入是次要的(但很重要) 一些漂亮的(LINQ)语法用于拥有一堆索引并返回未包含的项,这将是一个额外的好处使用a来保存“true”整数并用于搜索集合。使用这种方法,您只需

这有点吹毛求疵,我可能忽略了一些简单的事情

有时我有一些整数,必须能够查找它们是真是假。我总是通过使用字典来解决这个问题,插入一个true,然后使用ContainsKey来查看某个内容是否为true(默认情况下为false)

但是,插入一个甚至没有使用过的bool似乎不是一个优雅的解决方案:)您会推荐什么结构?查找性能是主要的,插入是次要的(但很重要)


一些漂亮的(LINQ)语法用于拥有一堆索引并返回未包含的项,这将是一个额外的好处

使用a来保存“true”整数并用于搜索集合。使用这种方法,您只需存储所需的数据,就可以获得与词典当前相同的O(1)性能。

使用a保存“true”整数,并使用搜索集合。使用这种方法,您只需存储所需的数据,就可以获得与当前使用字典相同的O(1)性能。

您可以使用大量整数

如果为真,则将数组[position]=1;如果为假,则将数组[position]=0

查找是在O(1)中完成的,并且您已经拥有了它。只要需要,就可以声明数组

这不是最经济的解决方案。在.NET2.0中,没有哈希集


或者第二个选项您可以使用一个

您可以使用一系列整数

如果为真,则将数组[position]=1;如果为假,则将数组[position]=0

查找是在O(1)中完成的,并且您已经拥有了它。只要需要,就可以声明数组

这不是最经济的解决方案。在.NET2.0中,没有哈希集

或者第二个选项,您可以使用一个

假设所有“int”都有一个值,并且假设所有“int”都有一个值,并且没有第三个状态为“未知”