为什么.NET中有LinkedList?

时间:2011-03-18 18:08:50

标签: .net

拥有链表的目的是什么? http://msdn.microsoft.com/en-us/library/he2s3bh7.aspx它的特质是什么使它成为框架的重要组成部分。

3 个答案:

答案 0 :(得分:4)

链接列表允许您在列表的开头或结尾插入额外的节点,如果您已经拥有了希望新值在之前或之后的节点,则甚至可以在列表的中间插入。

List<T>类似的缺点是:

  • 内存效率较低(每个值Node个对象)
  • 较少的缓存一致性(值可以分布在内存中)
  • 无随机访问

答案 1 :(得分:2)

LinkedList在列表末尾以外的位置插入和删除项目的速度更快。

有关详细信息,请参阅http://en.wikipedia.org/wiki/Linked_list#Tradeoffs

答案 2 :(得分:2)

如果您经常需要在已知节点中添加或删除项目,但您不需要随机访问,则链接列表会更快。

有关详细信息,请参阅Wikipedia