中序线索化二叉树
时间: 1ms 内存:128M
描述:
已知一个二叉树的括号表示法如下:
A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))
部分代码已给出,请补充以实现相应的功能:
1、根据括号表示法建立二叉树
2、输出二叉树
3、中序线索化二叉树
4、输出二叉树线索中序序列
#include <stdio.h>
#include <malloc.h>#define MaxSize 100typedef struct node{char data;int ltag,rtag; //增加的线索标记struct node *lchild;struct node *rchild;} TBTNode;/********/int main(){TBTNode *b,*T;CreateTBTNode(b,"A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))");//建立的二叉树DispTBTNode(b); //输出二叉树的括号表示法printf("\n");T=CreaThread(b); //中序线索化二叉树ThInOrder(T); //输出二叉树的线索中序序列return 0;}
输入:
输出:
输出有两行,第一行为该二叉树的括号表示,接下来的一行输出二叉树线索中序序列。其中线索中序序列输出格式为 ”A B C D E“,请不要输出多余字符。
示例输入:
示例输出:
提示:
参考答案:
解锁文章
文章评论