- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构第九章 查找part4
3.二叉排序树的插入算法 根据动态查找表的定义,“插入”操作在查找不成功时才进行; * (1) 若它的左子树不空,则左子树上所有结点的值均小于根结点的值; 1.二叉排序树(二叉查找树)定义: 二叉排序树或者是一棵空树;或者是具有如下特性的二叉树: (3) 它的左、右子树也都分别是二叉排序树。 (2) 若它的右子树不空,则右子树上所有结点的值均大于根结点的值; 2.二叉排序树的查找算法: 1) 若给定值等于根结点的关键字,则查找成功; 2) 若给定值小于根结点的关键字,则继续在左子树上进行查找; 3) 若给定值大于根结点的关键字,则继续在右 子树上进行查找。 否则, 若二叉排序树为空,则查找不成功; 50 30 80 20 90 85 40 35 88 32 例如: 二叉排序树 查找关键字 == 50 , 50 50 35 , 50 30 40 35 50 90 , 50 80 90 95 , 从上述查找过程可见, 在查找过程中,生成了一条查找路径: 从根结点出发,沿着左分支或右分支逐层向下直至关键字等于给定值的结点; 或者 从根结点出发,沿着左分支或右分支逐层向下直至指针指向空树为止。 ——查找成功 ——查找不成功 算法描述如下: Status SearchBST (BiTree T, KeyType key, BiTree f, BiTree p ) { // 在根指针 T 所指二叉排序树中递归地查找其 // 关键字等于 key 的数据元素,若查找成功, // 则返回指针 p 所指该数据元素的结点,并返回 // 函数值为 TRUE; } // SearchBST … … … … 否则表明查找不成功,返回 // 指针 p所指查找路径上访问的最后一个结点, // 并返回函数值为FALSE, 指针 f 指向当前访问 // 的结点的双亲,其初始调用值为NULL if (!T) else if ( EQ(key, T-data.key) ) else if ( LT(key, T-data.key) ) else { p = f; return FALSE; } // 查找不成功 { p = T; return TRUE; } // 查找成功 SearchBST (T-lchild, key, T, p ); // 在左子树中继续查找 SearchBST (T-rchild, key, T, p ); // 在右子树中继续查找 30 20 10 40 35 25 23 f T 设 key = 48 f T f T 22 p f T f T T T T f f f p 若二叉排序树为空树,则新插入的结点为新的根结点;否则,新插入的结点必为一个新的叶子结点,其插入位置由查找过程得到。 Status Insert BST(BiTree T, ElemType e ) { // 当二叉排序树中不存在关键字等于 e.key 的 // 数据元素时,插入元素值为 e 的结点,并返 // 回 TRUE; 否则,不进行插入并返回FALSE if (!SearchBST ( T, e.key, NULL, p )) { } else return FALSE; } // Insert BST … … s = (BiTree) malloc (sizeof (BiTNode)); // 为新结点分配空间 s-data = e; s-lchild = s-rchild = NULL; if ( !p ) T = s; // 插入 s 为新的根结点 else if ( LT(e.key, p-data.key) )
您可能关注的文档
- 探究电电阻上的电流跟两端电压胡关系.ppt
- 排水固结法新.ppt
- 探究电阻上的电流跟两端电压的关系7.1.ppt
- 挥别高二展望高三.ppt
- 排砂采油技术在煤层气开发中的应用2013 01.ppt
- 接待环节常见客户问题参考话术-电气部分.doc
- 接种异常反应损害程序分级.doc
- 接口第4章DMA技术.ppt
- 探究影响鼠妇分布的环境因素1.ppt
- 接口技术_6中断.ppt
- 2025-2030中国数码切割机行业市场现状供需分析及重点企业投资评估规划分析研究报告.docx
- 2025-2030中国数码脉冲反射仪行业市场前景分析及发展趋势与投资战略研究报告.docx
- 2025-2030中国政府云计算行业需求潜力及投资战略规划策略报告.docx
- 2025-2030中国散热行业竞争对手调研及未来需求潜力研究报告.docx
- 2025-2030中国教育软件行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2025-2030中国教辅书行业市场发展现状及前景趋势与投资战略研究报告.docx
- 2025-2030中国放射治疗运动管理行业市场发展趋势与前景展望战略分析研究报告.docx
- 2025-2030中国放射源行业市场发展趋势与前景展望战略研究报告.docx
- 2025-2030中国数字集成无源设备行业市场发展趋势与前景展望战略分析研究报告.docx
- 2025-2030中国放射治疗直线粒子加速器行业市场现状供需分析及投资评估规划分析研究报告.docx
最近下载
- 食物中毒应急预案及处置流程.docx VIP
- 悦纳自我,完善自我 主题班会课件(共16张PPT).ppt VIP
- 2024年党纪学习教育知识竞赛试题(含答案).doc VIP
- 不一样的卡梅拉-我不是胆小鬼-11.ppt
- 《pmc成本降低实施计划》ppt模板课件.ppt
- DLT 573-2021电力变压器检修导则_PDF解密.docx VIP
- 公司管理制度与岗位职责培训.pptx VIP
- E110-2014(R2023) 用便携式硬度仪测定金属材料洛氏硬度和布氏硬度的标准试验方法(中文版).pdf
- 不锈钢立式储罐操作保养规程.docx VIP
- 江苏省2024年中小学教师招聘考试中学信息技术试卷及答案.docx VIP
文档评论(0)