我已经实现了一个二叉搜索树,并想要在其插入功能中添加更多功能,以使其成为自平衡树。我正在使用C#进行编码。 请问有人能够向我推荐一些好的教程或链接吗?我做了一些搜索并找到了一些链接,但它们都不够详细。 谢谢。
有很多用于自平衡搜索树的算法,其中许多算法都很复杂,而其他一些则相当简单(尽管有一些注意事项)。 Cormen、Leisserson、Rivest和Stein的书《算法导论》第二版是算法入门的绝佳教材,非常详细地介绍了红黑树。此外,它还是关于算法和数据结构的优秀书籍。 如果您对使用伸展树感兴趣,它们非常快速且实际上相当容易实现,该数据结构的原始论文非常易懂。此外,它还包括所有运行时界限的证明。 Treap是一种简单的随机平衡二叉搜索树,一旦您知道如何实现树旋转,就可以很容易地实现它。树旋转也用于伸展树中,因此值得探究。 对于AVL树,这个讲座似乎是一个不错的资源。 希望这能帮到您!
System.Collections.Generic.SortedList<T>
。 - H H