From 94f4fcd22e2375c0c8a9ccd58da3db92ad9d0fe0 Mon Sep 17 00:00:00 2001 From: Xu Bai <1373953675@qq.com> Date: Fri, 26 Jul 2019 22:44:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=A2=9D=E5=A4=96=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _04.树/_c.线索二叉树.c | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/_04.树/_c.线索二叉树.c b/_04.树/_c.线索二叉树.c index 8639297..cb4e4f4 100644 --- a/_04.树/_c.线索二叉树.c +++ b/_04.树/_c.线索二叉树.c @@ -2,7 +2,7 @@ * @Author: Xu Bai * @Date: 2019-07-23 22:43:14 * @LastEditors: Xu Bai - * @LastEditTime: 2019-07-26 22:36:04 + * @LastEditTime: 2019-07-26 22:43:54 */ #include "string.h" #include "stdio.h" @@ -97,4 +97,35 @@ void InThreading(BiThrTree p) pre = p; InThreading(p->rchild); } +} + +/*Thrtָͷڵ */ +Status InOrderThreading(BiThrTree *Thrt, BiThrTree T) +{ + *Thrt = (BiThrTree)malloc(sizeof(BiThrNode)); + if (!*Thrt) + { + exit(-1); + } + /*ͷڵ */ + (*Thrt)->LTag = Link; + (*Thrt)->RTag = Thread; + /*ָָ */ + (*Thrt)->rchild = (*Thrt); + if (!T) + { + /* գָָ */ + (*Thrt)->lchild = *Thrt; + } + else + { + (*Thrt)->lchild = T; + pre = (*Thrt); + InThreading(T); + pre->rchild = *Thrt; + /*һ */ + pre->RTag = Thread; + (*Thrt)->rchild = pre; + } + return OK; } \ No newline at end of file