平衡二叉树
//平衡二叉树结点
typedef struct AVLNode {
int key;//数据域
int balance;//平衡因子
typedef struct AVLNode* lchild, * rchild;
}AVLNode,*AVLTree;
红黑树
//红黑树结点
struct RBnode {
int key;//关键字的值
RBnode* parent;//父结点指针
RBnode* lchild;//左孩子指针
RBnode* rchild;//右孩子指针
int color;//结点颜色
};
B树
//5叉排序树的定义(B树)
struct Node {
int keys[4];//最多四个关键字
struct Node* child[5];//最多5个孩子
int num;//结点中有几个关键字
};