对于键的存在,有没有比字典更好的数据结构?
本文关键字:字典 更好 数据结构 有没有 于键 存在 | 更新日期: 2023-09-27 17:50:38
我经常想优化.Contains
在集合上的性能。
我总是通过创建一个Dictionary<TKey,bool>
,然后在字典上使用. containskey来提供O(1) .Contains
性能来做到这一点。
然而,它总是让我恼火,我实际上根本不关心字典中的值。
是否有比字典更好的数据结构来支持这种情况,我不关心实际值,只关心键的存在?
HashSet
有一个方法Contains
,它是对值的O(1)搜索。这应该足够了(假设您的TKey
正确实现了GetHashCode
):)