如果我想在这些集合类“Dictionary”,“List”和“Sorted List”中插入数据,这将需要更少的时间来执行插入?你能给我一个代码来解释这个过程吗?
答案 0 :(得分:13)
List<T>
插入速度最快
LinkedList<T>
将以最快的速度插入。。
对于大多数实际应用而言,差异微乎其微;你应该使用符合你需要的任何一个。
答案 1 :(得分:4)
向LinkedList插入一个值是O(1)操作。列表(由数组实现)可能需要额外分配和复制项目。
答案 2 :(得分:1)
如果您的性能要求非常严格,那么在决定之前,您应该在您的环境中衡量并您的数据。
我会提供一些猜测,在你进行自己的测量之前,你不应该认为这是理所当然的:
List
(或数组)。LinkedList<List<T>>
)以避免List
调整大小。List
并招致一些
调整大小以接受更多元素时的性能损失。我&#39;米
不确定这种惩罚是否合理使用Dictionary
或LinkedList
相反 - 但如果你衡量,你会成为;)所有这一切都假设您不关心集合中的是否插入了新元素以及您以后如何检索它...如果您做关心,然后您将根据 选择您的数据结构,而不仅仅是单独插入性能。