Data structures 红黑树有用的地方

Data structures 红黑树有用的地方,data-structures,Data Structures,可能重复: 我开始在麻省理工学院的红黑树上看电影,15分钟后就放弃了 当然,我没有看过之前的10节课,但为什么在进入理论之前没有真实世界的例子呢 有人能举个例子来解释为什么红黑树是一个重要的数据结构吗 红黑树是自平衡的,因此可以在O(logn)时间内插入、删除和搜索。对于插入和删除操作,其他类型的平衡树(例如AVL树)通常较慢 此外,红黑树的代码往往更简单 它们适用于创建地图或关联阵列以及专用数据存储。我在一个高速电信应用程序中使用了一个来实现一个成本最低的路由系统。注:我还没有看过这个讲座

可能重复:

我开始在麻省理工学院的红黑树上看电影,15分钟后就放弃了

当然,我没有看过之前的10节课,但为什么在进入理论之前没有真实世界的例子呢


有人能举个例子来解释为什么红黑树是一个重要的数据结构吗

红黑树是自平衡的,因此可以在O(logn)时间内插入、删除和搜索。对于插入和删除操作,其他类型的平衡树(例如AVL树)通常较慢

此外,红黑树的代码往往更简单


它们适用于创建地图或关联阵列以及专用数据存储。我在一个高速电信应用程序中使用了一个来实现一个成本最低的路由系统。

注:我还没有看过这个讲座

红黑树是在添加或删除项目时自动平衡的二叉搜索树。此功能保证此树中的每个搜索都具有
O(logn)
复杂性

如果您构建一棵树而不平衡它,那么就有可能创建一棵非平衡树,它实际上是一个具有
O(n)
复杂性的链表。

称为“自平衡二叉搜索树”

“简单地说,红黑树是一种二叉搜索树,它的插入和删除方式使树始终保持合理的平衡。”

这有助于对数据进行排序。如果不进行平衡,树将转移到一个链表中。

提供了一个解释和一个重要示例

红黑树为插入时间、删除时间和搜索时间提供了最坏的保证。这对于实时应用程序非常有用

一个真实的例子是Linux内核中的完全公平的调度器