B-树的结构

阅读更多

http://student.zjzk.cn/course_ware/data_structure/web/chazhao/chazhao9.3.2.2.htm

 

 

#define Max l000 //结点中关键字的最大数目:Max=m-1,m是B-树的阶
#define Min 500 //非根结点中关键字的最小数目:Min=┌m/2┐-1
typedef int KeyType; //KeyType应由用户定义
typedef struct node{ //结点定义中省略了指向关键字代表的记录的指针
   int keynum; //结点中当前拥有的关键字的个数,keynum《Max
   KeyType key[Max+1]; //关键字向量为key[1..keynum],key[0]不用。
   struct node *parent; //指向双亲结点
   struct node *son[Max+1];//孩子指针向量为son[0..keynum]
 }BTreeNode;
typedef BTreeNode *BTree;

 

 

 

有的B-树(如第10章介绍的B+树)是将所有辅助信息都存于叶结点中,而内部结点(不妨将根亦看作是内部结点)中只存放关键字和指向孩子结点的指针,无须存储指向辅助信息的指针,这样使内部结点的度数尽可能最大化。

你可能感兴趣的:(B-树的结构)