写在前面   终于,在学习了几天的红黑树相关的知识后,我想把我所学所想和所感分享给大家。红黑树是一种比较难的数据结构,要完全搞懂非常耗时耗力,红黑树怎么自平衡?什么时候需要左旋或右旋?插入和删除破坏了树的平衡后怎么处理?等等一连串的问题在学习前困扰着我。如果你在学习过程中也会存在我的疑问,那么本文对你会有帮助,本文帮助你全面、彻底地理解红黑树! 本文将通过图文的方式讲解红黑树的知识点,并且不会涉及到任何代码,相信我,在懂得红黑树实现原理前,看代码会一头雾水的,当原理懂了,代码也…

2019年3月12日 0条评论 10点热度 阅读全文

0. 简介 在此声明,B-Tree最正确的翻译应该为B树,而不是B-树,也即并没有B-树的说法,二叉树叫Binary Tree,二叉搜索树叫Binary Search Tree(BST)B树叫Balance Tree,简写为B-Tree (注意是这两个单词连起来的意思,不是减号),B+树是B+ Tree。 1. BST(Binary Search Tree,即二叉搜索树,并不是B树) 所有非叶子结点至多拥有两个儿子(Left和Right,可以只有一个); 所有结点存储一个关键字; 非叶子结点的左指针指向小于其关键字…

2018年6月28日 0条评论 4点热度 阅读全文

【树的定义】 树是一种非线性的有序数据结构,能很好地描述有分支和层次特性的数据集合,其是递归定义的。 一颗树是由 n(n>=0) 个元素组成的有限集合,其中: 当 n=0 时,称为空树 每个元素称为结点(node) 对于任何一棵非空树,满足以下条件: 有且仅有一个特定的根结点 (root),其没有前驱。 除根节点外每个结点都有唯一一个前驱结点 每个结点都有 0 或多个后继结点 当 n>1 时,除根结点之外的其余结点被分成 m(m>0) 个互不相交的有限集合 T1,T2,…,Tm,其中每个集合又是一…

2018年6月11日 0条评论 8点热度 阅读全文

【树的定义】 树是一种非线性的有序数据结构,能很好地描述有分支和层次特性的数据集合,其是递归定义的。 一颗树是由 n(n>=0) 个元素组成的有限集合,其中: 当 n=0 时,称为空树 每个元素称为结点(node) 对于任何一棵非空树,满足以下条件: 有且仅有一个特定的根结点 (root),其没有前驱。 除根节点外每个结点都有唯一一个前驱结点 每个结点都有 0 或多个后继结点 当 n>1 时,除根结点之外的其余结点被分成 m(m>0) 个互不相交的有限集合 T1,T2,…,Tm,其中每个集合又是一…

2018年6月11日 0条评论 14点热度 阅读全文

        对I2C总线的时钟同步和总线仲裁的深入理解         每一个IIC总线器件内部的SDA、SCL引脚电路结构都是一样的,引脚的输出驱动与输入缓冲连在一起。其中输出为漏极开路的场效应管、输入缓冲为一只高输入阻抗的同相器[1]。这种电路具有两个特点:  ①由于SDA、SCL为漏极开路结构,借助于外部的上拉电阻实现了信号的“线与”逻辑; ②引脚在输出信号的同时还将引脚上的电平进行检测,检测是否与刚才输出一致。为 …

2018年4月9日 0条评论 0点热度 阅读全文