![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树
文章平均质量分 53
幽萌之雨
上班族
展开
-
红黑树详解
typedef enum{RED=0,BLACK=1}ColorType; typedef int KeyType; typedef struct rb_node { rb_node* leftchild; rb_node* parent; rb_node* rightchild; ColorType color; KeyType key; }rb_node,&RBTree; rb_node* Buynode() { rb_node* s = (rb_node*)malloc(si.原创 2022-03-21 20:17:50 · 43 阅读 · 0 评论 -
二叉搜索树
每个节点都有一个作为搜索依据的关键码(key),所有节点的关键码互不相同 左子树(如果存在)上所有节点的关键码都小于根节点的关键码 左子树(如果存在)上所有节点的关键码都小于根节点的关键码 ...原创 2022-03-21 20:05:58 · 624 阅读 · 0 评论 -
关于二叉树的常问问题
节点定义 typedef char ElemType; typedef struct BtNode { ElemType data; struct BtNode* leftchild; struct BtNode* rightchild; }BtNode,*BinaryTree; 如何判断二叉树是满二叉树 描述:对于满二叉树来说,它的每一层节点的个数都是2的幂次方个,那么我们就可以利用这个特点,使用两个队列,在每一次入队完之后,判断一次队中的个数是否达到了当前的2的幂次方个,如果达到了,则继原创 2022-03-20 21:22:48 · 1139 阅读 · 0 评论 -
AVL树详解
目录 AVL树定义 节点定义 购买节点 插入节点 平衡化旋转 左旋 右旋 改变平衡因子 单旋与双旋的判断 先左后右型: 当为左单旋时图解: 当为双旋时(E的balance为1时)图解: 当为双旋时(E的balance为-1时)图解: 先右后左型: 当为单旋时: 当为双旋时(D的balance为-1时)图解: 当为双旋时(D的balance为1时)图解: AVL树定义 一颗AVL树或者是孔数,或者是具有以下性质的二叉搜索树:它的左子树和...原创 2022-03-16 20:02:26 · 1291 阅读 · 0 评论 -
二叉树详解
树的介绍 树的定义 树是由n(n>=0)个节点组成的有限集合。如果n=0,称为空树;如果n>0,则: 有一个特定的称之为根(root)的节点,它只有直接后继,但没有直接前驱; 除根以外的其它节点划分为m(m>=0)个互不相交的有限集合,每个集合又是一棵树,并且称之为根的子树,没棵子树的根节点有且只有一个直接前驱,但可以有0个或多个直接后继 树的性质: 节点的度:一个节点含有的子树的个数称为该节点的度; 树的度:一棵树中,最大的节点的度称为树的度(这里不一定是根节点,如原创 2022-03-20 19:45:24 · 4993 阅读 · 1 评论