可以提供一下吗。 NET Collection 根据查找时间排序的顺序列表?

发布于 2024-11-30 04:17:03 字数 2005 浏览 0 评论 0 原文

我只是在互联网上搜索.NET 的各种集合的优点和缺点。我发现以下几点

  1. 在查找值的上下文中,Dictionary 比 List 更快。
  2. 在查找值的上下文中,HashSet 比 List 更快。
  3. 在查找值的上下文中,字典比哈希表更快。它们都不能保证保持项目的顺序。
  4. 我读到 Hashset 是 .NET 中的快速集合,

因此我对 .NET 集合

  1. Hashset
  2. Dictionary
  3. Hashtable
  4. List
  5. ArrayList

采用以下排序顺序对于上述排序顺序,我使用了以下链接

除了上述问题之外,我还发现了一些有用的链接,我想分享

上面的排序顺序是否正确?如果没有,您可以重新安排一下吗?如果有人可以在上面列表的排序顺序中添加更多集合,那么我们将不胜感激。

I am just searching on internet about the advantages and disadvantages of various collections of the .NET. I found the following points

  1. Dictionary is faster than List in the context of lookup for value.
  2. HashSet is faster than List in the context of lookup for value.
  3. Dictionary is faster than Hashtable in the context of lookup for value. None of them guarantee preserving the order of items.
  4. I read that Hashset is fasted collections in .NET

So I come to the following sorted order for the .NET Collections

  1. Hashset
  2. Dictionary
  3. Hashtable
  4. List
  5. ArrayList

For the above sorted order I have used the following links

And besides the above question I found some useful links which I want to share

Is the above sorted order is in correct order ? If not can you please rearrange it ? If anyone can add some more collections into the sorted order of the above list then it would be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

故事还在继续 2024-12-07 04:17:03

这取决于您执行查找的方式
这就是为什么有如此多不同的收藏的原因之一。另一个是插入操作的特征。

所有藏品都有特定的用途。如果您有查找键,则 Dictionaray 比搜索 ListHashset 更快(除非该对象是关键)。
如果您有索引,List 比 Dictionary 更快,而数组甚至更快。

如果查找需要查找完全满足给定要求的所有对象。例如,整数集合中的所有整数,其中 10

因此,在查找性能方面没有固定的顺序。这取决于查找的特征。

查找性能仅说明了故事的一部分。必须将特征集作为漏洞进行分析,以找到给定任务的集合。

  • 您是否打算进行大量插入?
  • 如何执行查找
  • ?是否需要排序

It depends on how you perform the lookup.
That's one of the reasons why there's so many different collections. Another would be the characteristics of insert operations.

all collections serve a specific purpose. If you have a lookup key then Dictionaray<Tkey,Telement> is faster than searching a List<T> or a Hashset<T> (unless the object is the key).
If you have an index List<T> is faster than Dictionary and array is even faster.

If the lookup needs to find all objects that full fill a given requirement. E.g all ints in a collection of ints where 10

So there's no set order when it comes to lookup performance. It depends on the characteristics of the lookup.

And the lookup performance only tells part of the story. The set of characteristics must be analysed as a hole to find the collection for a given task.

  • Are you going to have a lot of inserts
  • Hows lookup performed
  • Is sorting required

are some that spring to mind

枕花眠 2024-12-07 04:17:03

SortedDictionary 也可以添加到列表中,因为它按顺序保留元素。

谢谢

SortedDictionary can be added as well in the list as it preserves elements in the order .

Thanks

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文