Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 红黑树与安德森树_Performance_Algorithm_Data Structures_Red Black Tree - Fatal编程技术网

Performance 红黑树与安德森树

Performance 红黑树与安德森树,performance,algorithm,data-structures,red-black-tree,Performance,Algorithm,Data Structures,Red Black Tree,既然后者比前者简单得多,而且据说它在实践中达到了几乎相同的性能,为什么会有人愿意这样做呢 “据说”(Wikipedia上)红黑树的性能比AA树更稳定,但AA树更平坦,搜索速度稍快。”因此R-B树的第一个优势是其性能更容易预测,这使其成为图书馆的良好数据结构(如源自STL的原始C++和C++标准库)。 第二,如果你看表格,你会看到两个表格(第71页和第72页)这表明AA树需要更多的比较来进行删除,插入和删除都需要更多的轮换,以获得更平坦的树。因此,这里有一个折衷:当比较便宜但更新频繁时,红黑树可能

既然后者比前者简单得多,而且据说它在实践中达到了几乎相同的性能,为什么会有人愿意这样做呢

“据说”(Wikipedia上)红黑树的性能比AA树更稳定,但AA树更平坦,搜索速度稍快。”因此R-B树的第一个优势是其性能更容易预测,这使其成为图书馆的良好数据结构(如源自STL的原始C++和C++标准库)。 第二,如果你看表格,你会看到两个表格(第71页和第72页)这表明AA树需要更多的比较来进行删除,插入和删除都需要更多的轮换,以获得更平坦的树。因此,这里有一个折衷:当比较便宜但更新频繁时,红黑树可能比AA树表现更好;否则,当比较昂贵但更新频繁时,红黑树可能比AA树表现更好okups比更新更频繁,AA树可能会赢


有趣的是,这种折衷与两者之间的折衷非常相似。比较AVL树和AA树会更有趣。

甚至你链接的wiki文章都说RBL具有更一致的性能!这就是我想要的。(我想在实现方面,AA树由于其简单性(与R-B树相比)而具有更大的优势。)