C#中的基础数据结构

ljs*_*ljs 12 .net c# data-structures

我想知道人们如何在不使用基类库实现的情况下在C#中实现以下数据结构: -

  • 链接列表
  • 哈希表
  • 二叉搜索树
  • 红黑树
  • B树
  • 二项式堆
  • 斐波那契堆

以及人们可以想到的任何其他基本数据结构!

我很好奇,因为我希望提高对这些数据结构的理解,看到C#版本而不是互联网上的典型C示例会很好!

Kon*_*lph 9

有一系列关于这个主题的MSDN文章.但是,我自己并没有真正阅读过该文本.我相信.NET的集合框架有一个破坏的界面,不能很好地扩展.

还有C5,我现在正在研究的一个图书馆.

由于上述原因,我有过的项目,以实现自己的藏品库,.NET,但之后的第一个标杆透露,即使是简单的,非线程安全的泛型我已经停止该项目Vector的实施是比本地慢List<T>.自从我照顾不产生任何效率低下的IL代码,这意味着.NET是根本不适应(至今)上齐名,为内部数据结构的替代写作,并在.NET框架必须使用一些幕后-scenes知识,以优化内置集合类.