1 回答

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
以下兩種描述形式之一均可:
void PreOrderTree(TNode *root, void (*Visit)())
{ p= root; if(p){Visit(p-> data);
PreOrderTree(p- > firstchild);
PreOrderTree(p-> nextsibling) ;}}
或者:
void PreOrderTree(TNode *root, void ( * Visit)())
{ p= root;
while(p | | ! StackEmpty(s)){
while(p) {Visit(p- > data) ;Push(s,p) ;p=p- > firstchild;}
p= Pop(s);p= p-> nextsibling;}}
擴(kuò)展資料
孩子兄弟表示法,采用的是鏈?zhǔn)酱鎯Y(jié)構(gòu),其存儲樹的實(shí)現(xiàn)思想是:從樹的根節(jié)點(diǎn)開始,依次用鏈表存儲各個(gè)節(jié)點(diǎn)的孩子節(jié)點(diǎn)和兄弟節(jié)點(diǎn)。
因此,該鏈表中的節(jié)點(diǎn)應(yīng)包含以下 3 部分內(nèi)容:
1、節(jié)點(diǎn)的值;
2、指向孩子節(jié)點(diǎn)的指針;
3、指向兄弟節(jié)點(diǎn)的指針;
添加回答
舉報(bào)