作者在 2016-05-03 09:40:30 发布以下内容
void PosOrder(BT *bt)
{
int i = 0, a[MaxSize];
BT *s[MaxSize], *p;
while (p != NULL || i != 0)
{
while (p != NULL)
{
s[++i] = p;
a[i] = 0;
p = p->Lchild;
}
if (i > 0)
{
if (a[i] == 0)
{
p = s[i];
if (i > 0)
{
p = p->Rchild;
a[i] = 1;
}
}
else
{
p = s[i--];
printf("%d", p->data);
p = NULL;
}
}
}
}