用c语言编程实现二叉树的中序遍历算法?
#include
#include
structbitnode*stack[100
]structbitnode//definestruct
{
chardata
structbitnode*lchild,*rchild
}
voidlater(structbitnode*&)//preordercreatetree
{
charch
scanfscanf(%c”,&;ch)
if(ch=”)
p=null
else{
p=(structbitnode*)malloc(sizeof(structbitnode*)bitnode)
p->data=ch
以后(p->lchild)
以后(p->rchild)
}
voidprint(structbitnode*p)//前序遍历(输出二叉树)
{
inti=-1
while(1)
{
whilep!=null)
]{
堆栈[i]=p->rchild/*printf(”确定?n“)*/
printf(”%c“,p->data)
p=p->lchild
}]如果(i!=-1)
{
p=stack[i
]i-->]else
return
}
voidmain()//主函数
{
structbitnode*p,*t
稍后(p)
print(p)]}
原文标题:!c语言 用C语言编程实现二叉树的中序遍历算法?,如若转载,请注明出处:https://www.saibowen.com/wenda/22549.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。