为什么STL和linux都使用红黑树作为平衡树的实现

作者&投稿:中叔狠 (若有异议请与网页底部的电邮联系)
~ 红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N))。Linux内核在管理vm_area_struct时就是采用了红黑树来维护内存块的....


帮看下 这2个什么颜色
回答:第一个是橙棕色 第二个是亚麻色

泾阳县18822089985: 为什么STL和linux都使用红黑树作为平衡树的实现 -
包欢安达: 红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N)).Linux内核在管理vm_area_struct时就是采用了红黑树来维护内存块的...红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N)).Linux内核在管理vm_area_struct时就是采用了红黑树来维护内存块的...

泾阳县18822089985: STL的map为什么用红黑树而不是哈希 -
包欢安达: 用红黑树虽然速度可能会略逊于哈希,但是整体来说,应该更节省内存.速度我们不说,肯定慢很多.省内存,我们来分析一下.一个红黑树的节点,有左右节点指针,和父节点指针,这就是三个指针的大小+value_type的大小; unordered_map呢,开放地址法,就value_type,如果是开链法,那就是prev指针和next指针,俩指针+value_type 也就是说,当你的value_type越小,红黑树越浪费内存.而hash table呢,主要是填充因子,比如0.5的填充因子,那么那些桶是要浪费一些内存的.

泾阳县18822089985: 红黑树在linux内核什么地方 -
包欢安达: 红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N)).Linux内核在管理vm_area_struct时就是采用了红黑树来维...

泾阳县18822089985: linux中 Redhat Centos ubuntu Fedora 的区别 -
包欢安达: 1.都说redhat是linux的代名词,也就是说redhat的linux被大多数人认可. 可是:RedHat.Enterprise.Linux.5 与 redhat linux 9.0 还有redhat fedora core 三者之间的具体关联和区别是什么? centos又是从哪冒出来的,我们公司用的就是centos,这个...

泾阳县18822089985: unix和linux都是操作系统,那么红帽子,红旗,ubuntu等这些跟linux或者unix什么关系啊? -
包欢安达: Unix是AT&T于1970年前后开发出来的,但不是open source. 从前Unix版本很多,现在主要的有Solaris (Sun, 现在是Oracle的一部分), AIX (IBM), HP-UX (HP).Linux是芬兰人Linus Torvalds于1991年发表的,与Unix很相似, 是open source.红帽子,红旗,ubuntu等都是建立在同一LInux内核上的.

泾阳县18822089985: 嵌入式Linux和RTOS的区别? -
包欢安达: RTOS:实时操作系统.LINUX:分时操作系统,通过配置内核也可改成实时操作系统. 对于关系,可以这么说,嵌入式包含了硬件软件,而Linux是嵌入式系统软件的一种,WINCE等也属于嵌入式系统软件.

泾阳县18822089985: 访问了STL的MAP中没有的元素会出现什么情况啊? -
包欢安达: 会在map中添加一个新的元素,键指为访问时的下标

泾阳县18822089985: 如何安装win10和linux 双系统 -
包欢安达: 1:前期准备(准备Linux分区) 我们要安装的Linux版本是Red Hat 9,一共三张CD 我们的电脑分区结构:C、D、E、F 其中,D盘数据已经清空,大小10GB.这个分区就是用来装Linux的.记住,在安装完Linux以后,您在Windows里将看不到...

泾阳县18822089985: linux 下如何查看stl的源代码 -
包欢安达: 下面首先给出这几篇文章,都是介绍STL入门的极佳导学文章-- C++ STL轻松导学STL简介A modest STL tutorial 看了这篇文章之后,我想你一定对STL有了一个概括性质的了解,当然,如果你感觉自己了解的仍然不够充分,你可以去这里--STL ...

泾阳县18822089985: Linux由哪几部分组成? -
包欢安达: 一、Linux shell Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核.不仅如此,Shell有自己的编程...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网