- 1、本文档共208页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ADT Definition (c++) Class Definition (c++) Search Function (c++) 3.二叉排序树的插入算法 根据动态查找表的定义,“插入”操作在查找不成功时才进行; Insert example Insert Function (c++) Insert Function (c++)(continue) Delete example Delete Function (c++) Delete Function (c++)(continue) Delete Function (c++)(continue) Delete Function (c++)(continue) 二、二叉平衡树 1、何谓“二叉平衡树”? B-tree example B-tree example B-tree example B-tree example Inserting into a B-tree Deleting from a B-tree Deleting from B-tree Deleting from B-tree 因此,在二叉平衡树上进行查找时,查找过程中和给定值进行比较的关键字的次数和 log(n) 相当。 由此推得,深度为 h 的二叉平衡树中所含结点的最小值 Nh = ?h+2/ ? 5 - 1。 反之,含有 n 个结点的二叉平衡树能达到的最大深度 hn = log?(?5 (n+1)) - 2。 三、 B - 树 1.定义 2.查找过程 3.插入操作 4.删除操作 5.查找性能的分析 1.B-树的定义 B-树是一种平衡的多路查找树,它在文件系统中很有用。 一棵m阶的B-树,或为空树,或为满足下列特性的m叉树: ① 树中每个结点至多有m 棵子树; ② 若根结点不是叶子结点,则至少有两棵子树;(至少含1个关键字) ③ 除根之外的所有非终端结点至少有?m/2?棵子树。(至少含 ?m/2?-1个关键字) ④ 所有的非终端结点中包含下列信息数据 (n, A0, K1, A1, K2, A2, …, Kn, An) 其中:Ki(i=1,2,…,n)为关键字,且KiKi+1(i=1,…,n- 1); Ai(i=0,…,n)为指向子树根结点的指针,且指针Ai-1所指子树中所有结点的关键字均小于Ki(i=1,…,n), An所指子树中所有结点的关键字均大于Kn, n ( ?m/2?-1≤n≤m-1)为关键字的个数(或n+1为子树个数)。 ⑤ 所有的叶子结点都出现在同一层次上,并且不带信息(可以看作是外部结点或查找失败的结点,实际上这些结点不存在,指向这些结点的指针为空)。 B-Trees 【Definition】A B-tree of order M is a tree with the following structural properties: (1) The root is either a leaf or has between 2 and M children. (2) All nonleaf nodes (except the root) have between ?M/2? and M children. (3) All leaves are at the same depth. Assume each nonroot leaf also has between ?M/2? and M children. 9/12 如图所示为一棵4阶的B-树,其深度为3。 在 m 阶的B-树上,每个非终端结点可能含有: n 个关键字 Ki(1≤ i≤n) nm n 个指向记录的指针 Di(1≤i≤n) n+1 个指向子树的指针 Ai(0≤i≤n) 多叉树的特性 typedef struct BTNode { int keynum; // 结点中关键字个数,结点大小 struct BTNode *parent; // 指向双亲结点的指针 KeyType key[m+1]; // 关键字向量(0号单元不用) struct BTNode *ptr[m+1]; // 子树指针向量 Record *recptr[m+1]; // 记录指
您可能关注的文档
- 四轮定位基本知识培训材料详解.ppt
- 市政工程隧道混凝土喷射机详解.ppt
- 输油站设备管理详解.ppt
- 市政公用工程专业一级注册建造师继续教育培训-2-桥梁主梁施工技术详解.ppt
- 蔬菜水果每日吃不能相互替代详解.ppt
- 市政公用工程专业一级注册建造师继续教育培训-3-桥梁斜拉索施工技术详解.ppt
- 四年级_角的度量详解.ppt
- 市政管道工程施工一级建造师详解.ppt
- 四年级_品德与社会上册_家有喜事详解.ppt
- 市政计算规范详解.ppt
- 2024年入队仪式领导讲话稿 .pdf
- 2024年国家公务员有哪些体检流程 .pdf
- 2024年健康管理师之健康管理师三级真题练习试卷A卷附答案 .pdf
- 专题02 济世经邦——中国古代国家的社会治理体系(练习)(解析版)-2025年高考历史二轮复习(新高考通用).docx
- 10.2 严格遵守诉讼程序(教学课件)-高二政治同步备课系列(统编版选择性必修2).pptx
- 8.2 诚信经营 依法纳税(教学课件)-高二政治同步备课系列(统编版选择性必修2).pptx
- 4.1被动运输-2024-2025学年高一生物同步备课课件(人教版2019必修1).pptx
- 第7讲 资产阶级革命和资本主义制度的确立-2025年高考历史一轮复习通史精要课件(统编版选必融合).pptx
- 第15讲 第二次世界大战与战后国际秩序-2025年高考历史一轮复习通史精要课件(统编版选必融合).pptx
- 2024年周年大事件选择题100道(原卷版)-备战2025年高考政治时政热点命题解读与押题预测.docx
文档评论(0)