线索二叉树(C# 2.0)
来源:互联网 发布:三体读后感 知乎 编辑:程序博客网 时间:2024/05/18 03:30
线索二叉树主要是为了解决查找结点的线性前驱与后继不方便的难题。它只增加了两个标志性域,就可以充分利用没有左或右孩子的结点的左右孩子的存储空间来存放该结点的线性前驱结点与线性后继结点。两个标志性域所占用的空间是极少的,所有充分利用了二叉链表中空闲存的储空间。
要实现线索二叉树,就必须定义二叉链表结点数据结构如下(定义请看代码):
Lnode
Ltag
Data
Rtag
Rnode
说明:
1. Ltag=0时,表示Lnode指向该结点的左孩子;
2. Ltag=1时,表示Lnode指向该结点的线性前驱结点;
3. Rtag=0时,表示Rnode指向该结点的右孩子;
4. Rnode时,表示Rnode指向该结点的线性后继结点;
以二叉链表结点数据结构所构成的二叉链表作为二叉树的存储结构,叫做线索二叉链表;指向结点的线性前驱或者线性后继结点的指针叫做线索;加上线索的二叉树称为线索二叉树;对二叉树以某种次序遍历将其变为线索二叉树的过程叫做线索化。
<script type="text/javascript"><!--google_ad_client = "pub-6628499292856412";google_ad_width = 468;google_ad_height = 60;google_ad_format = "468x60_as";google_ad_type = "text_image";//2006-11-11: 线索二叉树(C# 2.0)google_ad_channel = "1048285630";google_color_border = "99C9FF";google_color_bg = "FFFFFF";google_color_link = "808080";google_color_text = "66B5FF";google_color_url = "008000";//--></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script><iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-6628499292856412&dt=1176265686734&lmt=1176265686&format=468x60_as&output=html&channel=1048285630&url=http%3A%2F%2Fwww.cnblogs.com%2Fxuanfeng%2Farchive%2F2006%2F09%2F29%2F518493.html&color_bg=FFFFFF&color_text=66B5FF&color_link=808080&color_url=008000&color_border=99C9FF&ad_type=text_image&cc=1478&u_h=768&u_w=1024&u_ah=738&u_aw=1024&u_cd=32&u_tz=480&u_java=true" frameborder="0" width="468" scrolling="no" height="60" allowtransparency="allowtransparency"></iframe>
中序次序线索化二叉树算法:
中序次序线索化是指用二叉链表结点数据结构建立二叉树的二叉链表,然后按照中序遍历的方法访问结点时建立线索;(具体看代码)
检索中序二叉树某结点的线性前驱结点的算法:
1. 如果该结点的Ltag=1,那么Lnode就是它的线性前驱;
2. 如果该结点的Ltag=0,那么该结点左子树最右边的尾结点就是它的线性前驱点;
(具体请看代码)
检索中序二叉树某结点的线性后继结点和算法:
1. 如果该结点的Rtag=1,那么Rnode就是它的线性后继结点;
2. 如果该结眯的Rtag=0,那么该结点右子树最左边的尾结点就是它的线性后继结点
(具体请看代码)
解决方案中所有到二叉树的中序线索二叉树和中序线索链表的图
- 线索二叉树(C# 2.0)
- C#线索二叉树
- C#线索二叉树
- C#线索二叉树
- C#线索二叉树
- C#算法系列(2)——线索二叉树
- 6.3线索二叉树(二叉树的线索化)
- (C++)二叉树的线索化 / 线索二叉树
- 线索二叉树(解释)
- 线索二叉树(上)
- 线索二叉树(下)
- 线索二叉树(复习)
- 线索二叉树(二)
- 数据结构 树(线索二叉树)
- 线索二叉树 --->树
- morris traversal(线索二叉树)
- 线索二叉树(中序索引)
- 数据结构--二叉树(线索链表)
- 处理数据库的一小技巧,公共接口,蛮好的哦!!
- java平台名人录之Hibernate
- 二叉树遍历算法实现(C#2.0)
- C#发邮件的代码 (vs2005)
- D-Day +18 of .NET 后勤服务系统告一段落,继续回到自己的学习进程
- 线索二叉树(C# 2.0)
- OpenGL、Direct3D资源链接[转]
- 比较难的面试题
- 单片机查表求1-10的平方
- 挖掘 UltraEdit 优化中文网页功能
- CSDN 2007软件技术英雄大会
- 开博~
- 第一个asp.net正式项目!
- 揭开正则表达式的神秘面纱