B-树课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
B-树课程设计

课程设计成果 学院: 班 级: 学生姓名: 学 号: 设计地点(单位)设计题目: 完成日期: 年 月 日 指导教师评语: 成绩(五级记分制): 教师签名: 目 录 1 需求分析 1 1.1 系统目标 1 1.2 主体功能 1 1.3 开发环境 1 2概要设计 1 2.1 功能模块划分 1 2.2 系统流程图 2 3 详细设计 3 3.1 数据结构 3 3.2 模块设计 4 4 测试 7 4.1测试数据 7 4.2测试结果 7 5 总结 10 参考文献 11 附录 源程序代码 12 1 需求分析 1.1 系统目标 完成B-树的创建、查找、插入和删除。 1.2 主体功能 B-Trees是一类满足特殊条件的M路查找树,它满足如下两个条件的M路查找树: 1.所有叶节点的高度相同。 2.除根之外的所有节点都是半满的,即该节点包含M/2或更多的值。 3.树中每个节点都至多有M棵树。 4.所有的叶子节点都出现在同一层,并且不带信息。 5.所有的非终端节点中包含下列信息: (n,A[0],K[1],A[1],K[2],A[2]K[3],A[3]…….K[n],A[n]) 其中:K[i]为关键字,且K[i]K[i+1];A[i]为指向自树的指针,且A[i-1]所指子树中所有的节点的关键字均小于K[i],A[n]所指子树中所有节点的关键字均大于K[n],n为关键字的个数。 1.设计并实现B-Trees数据结构,包含其上的基本操作,如节点的插入和删除等。 2.实现在B-trees树上的查找操作。 3.设计良好的运行界面,能够实现重复的操作。 1.3 开发环境 开发系统:Windows 系统,处理器要求最低奔腾处理器,内存32m,建议在i5处理器,128m内存配置下调试。 编译集成软件:Devc++开发软件。 Devc++是一个强大的C/C++软件开发工具,操作简单,使用非常广泛,称为很多程序员的首选开发工具。 2概要设计 2.1 功能模块划分 主函数即main()函数,主要实现B-Trees的建立,建立一棵满足要求的4节B-Trres树。 菜单介绍函数即meau()函数,主要包括介绍各个功能的实现途径,并给操作者提供个操作界面。 插入元素函数即insertbtree(b)函数,主要有用户通过界面输入要插入的元素,首先判断要插入的元素是否已在B-Trees中,若不在则插入之。 删除函数即deletetree(b)函数,首先判断要删除的元素是否在B-Trees中若在该B-Trees中则删除。 查找函数即searchbtree(b)函数,由用户通过界面输入一个元素,查找该元素是否在该B-Trees中,若在就输出它在节点的位置。 图2.1 主函数流程图 2.2 系统流程图 B-树的主程序流程如图2.2所示 图2.2 主程序流程图 B-树的主程序流程如图2.3所示 图2.3 主程序流程图 3 详细设计 3.1 数据结构 B-树的数据类型: typedef struct BTNode { int keynum; //结点中关键字的个数,即结点的大小 struct BTNode *parent; //指向双亲指针 int key[m+1]; //关键字向量 struct BTNode *ptr[m+1]; //子树指针向量 }BTNode 3.2 模块设计 B-树插入新元素模块如图3.2所示。 图3.2 B-树插入元素函数流程图 B-树删除元素模块如图3.3所示。 图3.3 B-树删除元素函数流程图 B-树查找模块如图3.4所示。 图3.4 B-树查找元素模块流程图 B-树查找模块如图3.4所示。 图3.5 B-树查找元素模块流程图 4 测试 4.1测试数据 图表1 序号 数据内容 说明 显示截图 1 3 查找,要查元素在B-树中 图 4.2 2 5 查找,要查元素不在B-树中 图 4.3 3 32 插入,插入元素不在B树中 图 4.4 4 42 插入,插入元素在B-树中 图 4.5 5 61 删除,删除元素在B-树中 图 4.6 6 51 删除,删除元素不在B-树中 图 4.7 4.2测试结果 界

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档