线索二叉树(二)
来源:互联网 发布:网络写手平台 编辑:程序博客网 时间:2024/06/14 01:13
本篇记录前序化线索二叉树:前序化二叉树,就是在没有存放孩子节点的位置存放在前序遍历中该节点的前驱或者后继;建立基本的二叉树和线索二叉树的结构体在博客线索二叉树(一)中;**创建前序化线索二叉树:**
void MakePre(BiThrNode *ptr,BiThrNode *p){ if (ptr != NULL) { if (ptr->leftchild == NULL) { ptr->leftchild = p; ptr->Ltag = THREAD; } if(p != NULL&&p->rightchild == NULL) { p->rightchild = ptr->rightchild; ptr->Rtag == THREAD; } p=ptr; //先遍历根节点,再向左边和右边遍历 MakePre(ptr->leftchild,p); MakePre(ptr->rightchild,p); }}void MakeThreadTreeBYpre(BiThrNode *ptr)//建立前序遍历线索二叉树{ BiThrNode *p=NULL; //记住访问过的结点 MakePre(ptr,p); p->rightchild = NULL;}
非递归前序遍历线索二叉树:
void ThrPreOder(BiThrNode*ptr){ assert(ptr); while(ptr != NULL) { printf("%c ",ptr->data); if(ptr->Ltag==LINK) //如果有左孩子,打印左孩子结点 { ptr=ptr->leftchild; } else { ptr=ptr->rightchild; //否则打印右孩子,即使右边的地址是后继,也刚好是需要打印的数据 } }}
阅读全文
1 0
- 线索二叉树(二)
- 二叉树(二)---线索化二叉树
- 二叉树算法二之中序线索
- 【二十三】线索化二叉树
- 6.3线索二叉树(二叉树的线索化)
- (C++)二叉树的线索化 / 线索二叉树
- 线索二叉树(解释)
- 线索二叉树(上)
- 线索二叉树(下)
- 线索二叉树(复习)
- 数据结构 树(线索二叉树)
- 线索二叉树 --->树
- 线索二叉树(C# 2.0)
- morris traversal(线索二叉树)
- 线索二叉树(中序索引)
- 数据结构--二叉树(线索链表)
- (1.2.5.3)线索二叉树
- 线索二叉树(Threaded Binary Tree)
- 汽车EPS解析
- android activity 启动模式 ==> launchmode
- sort +awk+uniq 统计文件中出现次数最多的前10个单词 (2012-12-05 15:57:12)转载▼ 标签: 转载 原文地址:sort +awk+uniq 统计文件中出现次数最多的前
- 网上商城 重难点
- Windows 中的三种对象
- 线索二叉树(二)
- spring cloud config
- STL_map
- 纯干货,Spring-data-jpa详解,全方位介绍。
- Cobbler全自动批量安装部署Linux系统
- [职业规划]年龄的重要性 Silicon Valley’s Dark Secret: It’s All About Age
- Dubbo入门
- C++ 初始化列表(转载)
- JSP小整理(一)