0

会以下:

Dim stringlist As List(Of String)
Dim stringlisthas = stringlist.Contains("thing1")

比任何慢

Dim stringlist As List(Of String)
Dim stringlisthash As New HashSet(Of String)(stringlist)
Dim stringlisthas = stringlisthash.Contains("thing1")

包含需要哈希集吗?

4

1 回答 1

1

包含需要哈希集吗?

需要吗?不。

[ List<T>.Contains] 会比 [ HashSet<T>.Contains] 慢吗?

大概。这取决于如何List<T>.Contains实现(它可能是线性搜索)。

我会回答一个你没有问的问题。

有关系吗?

这取决于。您必须对两者都进行编码,对其进行分析,并查看它是否是您的应用程序中的瓶颈。如果不是,请坚持使用List<T>.Contains.

于 2010-09-20T14:06:07.467 回答