?? 習題-35.c
字號:
//本程序只給出了算法思想
//讀者可以自己完善本程序
typedef struct {
int data;
EBTNode *lchild;
EBTNode *rchild;
EBTNode *parent;
enum {0,1,2} mark;
} EBTNode,EBitree; //有mark域和雙親指針域的二叉樹結點類型
void PostOrder_Nonrecursive(EBitree T)//后序遍歷二叉樹的非遞歸算法,不用棧
{
p=T;
while(p)
switch(p->mark)
{
case 0:
p->mark=1;
if(p->lchild) p=p->lchild; //訪問左子樹
break;
case 1:
p->mark=2;
if(p->rchild) p=p->rchild; //訪問右子樹
break;
case 2:
visit(p);
p->mark=0; //恢復mark值
p=p->parent; //返回雙親結點
}
}//PostOrder_Nonrecursive
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -