你能提供.. NET Collection's根据查找时间对排序列表进行排序

本文关键字:排序 查找时间 列表 NET Collection | 更新日期: 2023-09-27 18:06:00

我只是在网上搜索各种。net集合的优缺点。我发现了以下几点

  1. 字典在查找值的上下文中比列表更快。
  2. HashSet在查找值的上下文中比List更快。
  3. 字典在查找值的上下文中比哈希表更快。它们都不能保证保持物品的顺序。
  4. 我读到Hashset在。net中是禁食集合

所以我对。net集合

进行了以下排序
  1. Hashset
  2. 字典
  3. Hashtable
  4. ArrayList

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

  • 哪些。net集合提供了最快的搜索
  • http://cidamon.com/blog/solution/27/dictionary-hashtable-and-hashset
  • http://www.dotnetperls.com/dictionary-time
  • c#什么时候应该使用List,什么时候应该使用arraylist?
  • http://www.dotnetperls.com/hashtable
  • 。. NET哈希表Vs字典-字典能这么快吗?
  • http://www.codeproject.com/Answers/197792/Hashtable-and-List-in-Csharp.aspx answer1

除了上面的问题,我还发现了一些有用的链接,我想和大家分享

  • 哈希表的通用版本是什么?
  • 为什么字典优先于哈希表?
  • Silverlight和ArrayList

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

你能提供.. NET Collection's根据查找时间对排序列表进行排序

我认为这篇文章可以对c#/有用。. NET基础:选择正确的集合类

这取决于如何执行查找。这就是为什么有这么多不同的系列的原因之一。另一个是插入操作的特性。

所有集合都有一个特定的目的。如果你有一个查找键,那么Dictionaray<Tkey,Telement>比搜索List<T>Hashset<T>更快(除非对象是键)。如果您有索引,List<T>比Dictionary和array更快。

如果查找需要找到满足给定需求的所有对象。例如:整型数集合中的所有整型数

所以当涉及到查找性能时,没有固定的顺序。这取决于查找的特征。

查找性能只是其中的一部分。必须将特征集作为一个孔进行分析,以找到给定任务的集合。

  • 你会有很多插入吗
  • 查找如何执行
  • 是否需要排序

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

谢谢