【问题标题】:Data Structures C#( LinkedList<T> ) vs Our Own Implementation of LinkedList in C#数据结构 C#( LinkedList<T> ) vs 我们自己在 C# 中的 LinkedList 实现
【发布时间】:2019-03-19 07:53:20
【问题描述】:

在数据结构中,C# 将其链表作为泛型,但我们也可以在 C# 中创建自己的链表实现。那么我要问的问题是它们之间是否有任何(性能或内存访问)差异。

【问题讨论】:

  • 如果您不发布 您的代码,谁能猜出它的性能?
  • 您可以使用非托管代码访问内存,即指针并添加您自己的实现
  • 如果你问这个问题,那么这是一个很好的假设,你不必担心内存问题的性能,因为你写的任何东西都可能是一个更糟糕的实现,比BCL 库。

标签: c# performance memory data-structures


【解决方案1】:

我会很慷慨,假设您真正要问的是“在 C# 中实现 LinkedList 有什么特别之处,我无法自己编写吗?”

答案是否定的。库中的实现是用 C# 编写的。以下是源代码:https://referencesource.microsoft.com/#system/compmod/system/collections/generic/linkedlist.cs

如果您不喜欢此实现提供的性能特征,请自己编写。

【讨论】:

  • 由于我们有 C# 的 LinkedList 实际实现的实际源代码,您可以将其复制/粘贴到您的解决方案中。如果您通过分析器运行它,您可以自己查看性能是否相同,
猜你喜欢
  • 1970-01-01
  • 2010-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-17
相关资源
最近更新 更多