这份实验报告详细介绍了关于B树的基本操作实现,包括插入、删除和搜索等过程,并探讨了其在查找中的应用。报告涵盖了实验内容、步骤及具体要求。
定义B-树存储结构(要求m≥3;为方便操作,在结点中增加双亲结点指针域,最底层的Fail节点用NULL指针表示,并且所有节点均存储于内存)。定义插入关键字函数、删除关键字函数、查找关键字函数以及按层次遍历输出B-树所有节点的函数。主程序中提供菜单(1. 插入关键字 2. 删除关键字 3. 查找关键字 4. 层次遍历输出B-树所有结点信息 5. 结束程序)。
插入关键字功能:输入为一个关键字,输出为新插入的关键字所在节点的信息。要求节点信息的输出格式如下所示:
(R102, n, K1, K2, …, Kn)
其中R表示根节点指针;第一个数字“1”表示根节点的A[1]指针,第二个数字“0”代表R->A[1]所指向结点的A[0]指针,第三个数字“2”则表示R->A[1]->A[0]->A[2](即该节点位于第四层)。n为该节点中的关键字数量,K1, K2, …, Kn代表该节点中n个非递减有序的关键字。
删除关键字功能:输入为一个关键字,输出包括删除成功与失败的信息反馈。
查找关键字功能:用户输入需要查询的关键字后,系统会给出查找成功或失败的提示。若找到,则还需提供关键字所在结点信息(采用第一项所述格式)。
层次遍历输出B-树所有节点的功能要求如下:
1. 输入为一个字符文件名;
2. 输出应写入该指定的字符文件中,
3. 每个节点的信息占一行,且遵循与插入功能相同的输出规则;
4. 节点的打印顺序需按照层次号由小到大的方式排列,并在相同层内按从左至右的原则依次列出。