【发布时间】:2018-07-07 17:23:43
【问题描述】:
我浏览了 C# 中 List 的代码
https://referencesource.microsoft.com/#mscorlib/system/collections/generic/list.cs,cf7f4095e4de7646
为什么列表实现为数组而不是链表?
我知道在使用双链表与数组比较时,内存是一个问题,但是当您将节点删除/添加到列表时,您对性能的影响会较小。
你能解释一下吗? 谢谢
【问题讨论】:
-
如何按索引访问链表?
-
除其他原因外:它旨在(通常)替换 ArrayList。
-
我想添加和删除项目,这是列表没有空间限制的目标,即我不必一直调整大小,就像在数组中一样。是的,访问数据很重要,但删除和添加也很重要,我想迭代列表,而不仅仅是按索引访问。
-
@OrelEraki 谢谢我找不到它。
-
特别看汉斯的言论;他们确实回答了这个问题..
标签: c# list collections