?? 算法 6.13.txt
字號:
算法 6.13
void CreateTree( CSTree &T ) {
// 按自上而下自左至右的次序輸入雙親-孩子的有序對,建立樹的二叉鏈表。
// 輸入時,以一對'#'字符作為結束標志,根結點的雙親空,亦以'#'表示之。
T = NULL;
for( cin>>fa>>ch; ch!='#'; cin>>fa>>ch;) {
p = new CSNode; p->data = ch; p->firstchild = p->nextsibling = NULL;
// 創建結點,指針域暫且先賦空
EnQueue(Q, p); // 指針入隊列
if (fa == '#') T = p; // 所建結點為根
else { // 非根結點的情況
GetHead(Q,s); // 取隊列頭元素(指針值)
while (s->data != fa ) { // 查詢雙親結點
DeQueue(Q,s); GetHead(Q,s);
} //while
if (!(s->firstchild)) { s->firstchild = p; r = p; } // 鏈接第一個孩子結點
else { r->nextsibling = p; r = p; } // 鏈接其它孩子結點
} //else
} //for
} // CreateTree
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -