.NET Built-in AVL-Tree?
本文关键字:AVL-Tree Built-in NET | 更新日期: 2023-09-27 18:19:45
.NET库中是否有内置的AVL树?
我找了一下,但没有找到。
- 如果有,那么在哪里?什么名称空间
- 如果没有,C#中是否有AVL树的良好实现
- 如果没有!那么有没有一种简单的方法可以完成呢?我知道它是如何工作的,以前也用原生C++构建过一个,但现在我没有时间,担心如果我自己做的话会有糟糕的性能
您可以使用System.Collections.Generic.SortedSet<T>
。我认为它是使用红黑树实现的,这与AVL树非常相似。
快速搜索在这里找到了一个实现。代码看起来很干净,但我还没有尝试过。
如果没有别的,您可以对SortedSet<T>
进行快速性能测试(如@Josef所建议的),看看您的用例是否有任何差异。
可以找到C#实现@http://code.google.com/p/self-balancing-avl-tree/。还实现了concat和split操作。