为什么会有线索化二叉树呢?二叉树是一种非线性结构,遍历二叉树几乎都是通过递归或者用栈辅助实现非递归的遍历。用二叉树作为存储结构时,取到一个节点,只能获取节点的左孩子和右孩子,不能直接得到节点的任一遍历序列的前驱或者后继。为了保存这种在遍历中需要的信息,我们..
分类:
其他好文 时间:
2016-05-05 07:16:07
阅读次数:
199
二叉树的遍历运算是将二叉树中节点按一定规律线性化的过程,当二叉链表作为存储结构时,只能找到节点的左、右孩子信息,而不能直接得到节点在遍历序列中的前驱和后继信息。线索化二叉树能够解决这样的问题,将二叉链表中的空指针域填上相应节点的遍历前驱或后继节点的地址,而..
分类:
其他好文 时间:
2016-04-27 22:51:44
阅读次数:
353
#define_CRT_SECURE_NO_WARNINGS1
#include<iostream>
usingnamespacestd;
enumPointerTag{THREAD,LINK};//枚举
前言:为了遍历的方便,我们在二叉树中引入前驱和后序,这样就储存了相关信息。
其结构如下:template<classT>
structBinaryTreeThdNode
{
T_data;..
分类:
其他好文 时间:
2016-04-27 07:09:56
阅读次数:
132
节点:
enumLinkType
{
THREAD,
LINK
};
template<classT>
structThredBinaryNode
{
ThredBinaryNode*_left;
ThredBinaryNode*_right;
LinkType_left_tag;
LinkType_right_tag;
T_data;
ThredBinaryNode(Tdata):_data(data),_left(NULL),_right(NULL),_left_tag(LINK),..
分类:
其他好文 时间:
2016-04-26 16:07:58
阅读次数:
225
二叉树是一种非线性结构,遍历二叉树几乎都是通过递归或者用栈辅助实现非递归的遍历。用二叉树作为存储结构时,取到一个节点,只能获取节点的左孩子和右孩子,不能直接得到节点的任一遍历序列的前驱或者后继。为了保存这种在遍历中需要的信息,我们利用二叉树中指向左右子树的..
分类:
其他好文 时间:
2016-04-23 07:52:08
阅读次数:
2235
#pragmaonce
#include<iostream>
usingnamespacestd;
enumPointTag
{
THREAD,
LINK
};
template<classT>
structBinaryTreeNodeThd
{
T_data;
BinaryTreeNodeThd<T>*_left;
BinaryTreeNodeThd<T>*_right;
BinaryTreeNodeThd<T>*_parent;
P..
分类:
其他好文 时间:
2016-03-13 18:14:04
阅读次数:
217
#define _CRT_SECURE_NO_WARNINGS#include#include#includeusing namespace std;typedef struct tree{ char data; int ltag; int rtag; tree *lchild; tree *rch...
分类:
其他好文 时间:
2015-11-08 14:41:53
阅读次数:
279
本文是数据结构基础系列(6):树和二叉树中第14课时线索二叉树的例程。#include
#include #define MaxSize 100
typedef char ElemType;
typedef struct node
{
ElemType data;
int ltag,rtag; //增加的线索标记
struct...
分类:
其他好文 时间:
2015-10-20 06:42:33
阅读次数:
164
1 #include 2 using namespace std; 3 4 typedef struct TBTNode 5 { 6 char data; 7 int ltag,rtag; 8 struct TBTNode * lchild; 9 ...
分类:
编程语言 时间:
2015-05-05 23:32:13
阅读次数:
272
线索化二叉树指的是二叉树中的结点进行逻辑意义上的“重排列”,使其可以线性的方式访问每个结点
前序遍历线索化:
方法:利用结点中的空的左指针域,使其指向后继结点。
前序遍历下图二叉树,遍历结果是:1 2 4 8 9 5 10 3 6 7,红线部分即指明该结点在前序遍历时的后继元素。
算法思想:
初始化位置指针
? p = NULL;
前序遍历二叉树
...
分类:
其他好文 时间:
2015-04-25 18:25:33
阅读次数:
258