相关疑难解决方法(0)

HashSet与List性能

很明显,泛型HashSet<T>类的搜索性能高于泛型List<T>类.只需将基于散列的密钥与线性方法进行比较即可List<T>.

但是,计算散列键本身可能需要一些CPU周期,因此对于少量项目,线性搜索可以是一个真正的替代HashSet<T>.

我的问题:收支平衡在哪里?

为了简化场景(并且公平),我们假设List<T>该类使用元素的Equals()方法来标识项目.

.net collections hash performance list

374
推荐指数
8
解决办法
18万
查看次数

对于密钥存在,是否存在比字典更好的数据结构

我经常想要优化.Contains集合的性能.

我总是通过Dictionary<TKey,bool>在字典上创建一个然后使用.ContainsKey来提供O(1).Contains性能.

然而,总是让我感到烦恼的是我实际上并不关心字典中的价值.

是否有比字典更好的数据结构来支持这种情况,我不关心实际值,只存在密钥?

c#

5
推荐指数
1
解决办法
97
查看次数

标签 统计

.net ×1

c# ×1

collections ×1

hash ×1

list ×1

performance ×1