二叉樹靜態(tài)遍歷

1、先序遍歷
void preorder(int root) {
if (root == -1) {
return;
}

printf("%d", Node[root]);
preorder(Node[root].lchid);
preorder(Noder[root].rchild);

}

2、中序遍歷
void inorder(int root) {
if (root == -1) {
return;
}
inorder(Node[root].lchid);
printf("%d", Node[root]);
inorder(Noder[root].rchild);
}

3、后序遍歷
void postorder(int root) {
if (root == -1) {
return;
}

postorder(Node[root].lchid);
postorder(Noder[root].rchild);
printf("%d", Node[root]);

}

4、層次遍歷

void layerorder(int root) {
    queue<int>  q;      //此處隊列存放節(jié)點下標
    q.push(root);       //將根節(jié)點入隊
    while (!q.empty()) {
        int now = q.front();    //取出隊首元素
        q.pop();
        printf("%d ", Node[now].data);  //訪問隊首元素
        if (Node[now].lchild != -1) {
            q.push(Node[now].lchild);
        }if (Node[node].rchild != -1) {
            q.push(Node[now].rchild);
        }

    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 二叉樹的定義 二叉樹(binary tree)是結(jié)點的有限集合,這個集合或者空,或者由一個根及兩個互不相交的稱為這...
    飄顏閱讀 517評論 0 2
  • //轉(zhuǎn)載請標明出處,原文地址:http://blog.csdn.net/hackbuteer1/article/d...
    大海一滴寫字的地方閱讀 769評論 0 2
  • 二叉樹:每個節(jié)點最多有兩個孩子,是一種動態(tài)數(shù)據(jù)結(jié)構(gòu),具有遞歸結(jié)構(gòu)。 其中空樹和只有根節(jié)點的樹都是二叉樹。 滿二叉樹...
    代夫阿普曼閱讀 407評論 0 4
  • 樹的定義與基本術(shù)語 ??樹型結(jié)構(gòu)是一類重要的非線性數(shù)據(jù)結(jié)構(gòu),其中以樹和二叉樹最為常用,是以分支關(guān)系定義的層次結(jié)構(gòu)。...
    java技術(shù)分享師閱讀 1,213評論 0 1
  • 在昨天的文章《對外探索世界,對內(nèi)探索自己》中,我提到自己正處于情緒低潮。 這其中有外在原因,也有個人自身原因。 而...
    戀上火烈鳥閱讀 611評論 0 3

友情鏈接更多精彩內(nèi)容