Требуется ли хэш-сет для содержимого с помощью List (of String) Vb.net - PullRequest
0 голосов
/ 20 сентября 2010

Будет ли следующее:

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")

Требуется ли хэш-сет для содержимого?

1 Ответ

1 голос
/ 20 сентября 2010

Требуется ли хэш-сет для содержимого?

Необходимый? №

Будет ли [List<T>.Contains] медленнее, чем [HashSet<T>.Contains]?

Возможно. Это зависит от того, как реализован List<T>.Contains (возможно, это линейный поиск).

Я отвечу на вопрос, который вы не задавали.

Имеет ли это значение?

Это зависит. Вы должны закодировать оба, профилировать и посмотреть, не является ли это узким местом в вашем приложении. Если это не так, просто придерживайтесь List<T>.Contains.

...