use*_*445 5 algorithm tree avl-tree red-black-tree
我想更好地理解差异,但还没有找到可以将其分解到我的水平的来源。
我知道两棵树每次插入最多需要 2 次旋转。那么如何在红黑树中更快地插入呢?
以及插入如何在 avl 树中需要 O(log n) 次旋转而在红黑中需要 O(1) 次?
Chr*_*ian 4
好吧,我不知道你的水平到底是多少,但简单地说,红黑树不如 AVL 树平衡。对于红黑树,从根到最远叶子的路径不超过从根到最近叶子的路径的两倍,而对于AVL树,两个相邻子树之间的级别差异永远不会超过一级。这使得 AVL 树中的插入和删除成本稍高,但查找速度更快。两种数据结构的渐近和最坏情况行为是相同的(两种情况下插入的运行时间(不是旋转次数)都是 O(log n) ,您提到的 O(1) 是所谓的摊销运行时间)。
请参阅本段,了解两种数据结构的简短比较。
归档时间:
11 年 前
查看次数:
890 次
最近记录:
7 年,11 月 前