版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,一、线索二叉树,定义:线索、线索化、线索二叉树,在一个n结点的链式存储二叉树中,有n+1个指针域是空指针域,可以把每个空指针域用于存放分别指向某种遍历次序的前趋和后继结点的指针。在结点的空指针域中存放的该结点在某遍历次序下的前趋结点和后继结点的指针叫做线索。,第12讲线索二叉树,2,遍历二叉树的结果是,求得结点的一个线性序列,A,B,C,D,E,F,G,H,K,先序序列ABCDEFGHK,中序序列BDCAHGKFE,后序序列DCBHKGFEA,3,指向该线性序列中的“前驱”和“后继”的指针,称作“线索”,与其相应的二叉树,称作“线索二叉树”,包含“线索”的存储结构,称作“线索链表”,ABC
2、DEFGHK,D,C,B,E,4,定义:线索、线索化、线索二叉树,把某结点原来空的左(右)指针域用于存放指向其前趋(后继)结点的指针,也叫左(右)线索。对一个二叉树中的所有结点的空指针域按照某种遍历次序加线索的过程叫作线索化,被线索化了的二叉树称作线索二叉树。,一、线索二叉树,5,增加两个标志域:,0leftChild域指示结点的左孩子1leftChild域指示结点的前驱0rightChild域指示结点的右孩子1rightChild域指示结点的后继,leftTag=,rightTag=,一、线索二叉树,6,中序线索二叉树:,图中的虚线箭头即为新加上的线索。,一、线索二叉树,7,后序序列DBEC
3、A,前序序列ABDCE,一、线索二叉树,8,带表头结点的中序线索二叉树,一、线索二叉树,9,实战:,1、对于下图二叉树,画出其前序线索二叉树、中序线索二叉树和后序线索二叉树。,2、n个结点的线索二叉树上含有线索数为()A2nBn-1Cn+1Dn,10,(1)中序线索化,对一个二叉树进行中序线索化的算法基本思想是:一边中序遍历一边建立线索。a)若访问结点的左孩子结点为空,则建立前趋线索;b)若右孩子结点为空,则建立后继线索。为此附设一个指针pre始终指向刚刚访问过的结点,而用指针cur指示当前正在访问的结点。pre的初始值为NULL。,一、线索二叉树,11,中序线索化算法,一、线索二叉树,voi
4、dInThreadHelp(ThreadBinTreeNode*cur,ThreadBinTreeNode*,12,中序线索化算法,一、线索二叉树,if(pre!=NULL,13,(2)中序线索树求后继结点,在中序遍历线索树过程中,按下述两条原则即可找到后继结点:a)如果某结点的右线索标志域为1,说明其右指针域是线索,这个线索所指的即是该结点的后继结点;b)如果某结点的右线索标志为0,则其右指针域是指向右儿子结点的指针,由此结点的右儿子结点起按左指针域指针逐结点向左查找,一直找到左线索标志域为1的结点,即是该结点的后继结点。,一、线索二叉树,14,(3)中序线索树求前趋结点,找前趋结点相应的原
5、则如下:a)如果某结点的左线索标志域为1,说明其左指针域是线索,这个线索所指的即是该结点的前趋结点;b)如果某结点的左线索标志为0,则其左指针域是指向左儿子结点的指针,由此结点的左儿子结点起按右指针域指针逐结点向右查找,一直找到右线索标志域为1的结点,即是该结点的前趋结点。,一、线索二叉树,15,(4)中序遍历线索树P217,a)先由根结点指针找到根结点,从根结点起沿左指针逐结点一直向左查找,找到左线索标志为1的结点(“最左”的结点)即为遍历中需首先访问的结点。b)由此结点开始,反复进行寻找后继结点的过程,并陆续访问这些结点,直至结束。,一、线索二叉树,16,templatevoidInThreadBinTree:InOrder(void(*Visit)(constElemType,中序线索二叉树的遍历算法,17,while(cur!=NULL)(*visit)(cur-data);if(cur-rightTag=THREAD_PTR)cur=cur-rightChild;elsecur=cur-rightChild;while(cur-leftChild=CHILD_PTR)cur=cur-leftChild;,中序线索二叉树的遍历算法,18,本讲小结,重点:1、线
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 极端高温中小岛屿国家户外工作者健康防护医疗措施
- 临清七年级历史漕运文化培训试卷
- 西医护理专业发展
- 医学26年:抗甲状腺药物应用规范 查房课件
- 4.3 对数说课稿2025学年高中数学人教A版2019必修第一册-人教A版2019
- 2026年辽宁省铁岭市部分学校中考二模九年级历史试卷(含答案)
- 第二节 美国说课稿2025学年初中地理粤人版七年级下册-粤人版2012
- 脑出血的并发症护理
- 老年护理环境改造与无障碍设计
- 上海工程技术大学《安全原理》2025-2026学年第一学期期末试卷(B卷)
- 人工智能 可信赖 第1部分:通则 征求意见稿
- 白细胞减少症病例讨论
- 年产200吨高纯金属铯铷项目报告书
- 2025具身智能行业发展研究报告
- 各国国旗介绍课件
- 第五单元100以内的笔算加、减法达标卷(单元测试)(含答案)2024-2025学年一年级数学下册人教版
- GB/T 20972.3-2025石油天然气工业油气开采中用于含硫化氢环境的材料第3部分:抗开裂耐蚀合金和其他合金
- 纪实摄影专题课件
- 国际多式联运单据与单证
- 抗衰知识培训课件
- 六年级《快速跑50米快速跑》教案、教学设计
评论
0/150
提交评论