二叉樹的深度優先遍歷

2021-09-13 14:45:10 字數 669 閱讀 8314

--- 歡迎指正---

今天繼續樹的遍歷。 這裡要說的是 二叉樹的 深度優先遍歷。

深度優先遍歷:從根結點開始,先遍歷根的左子樹,再遍歷根右子樹。以此類推輸出結果。如下圖:

深度優先結果: 5 、3、1、4、7、9

分析:1、先將5入棧, 此時棧中只有5乙個元素。 

2、將佔棧中的5彈棧,在將其右孩子7壓棧,此時棧中只有7乙個元素。

3、再將右孩子3入棧,此時棧中棧頂到棧底的順序是:3、7。

4、此時在彈棧, 重複2、3步驟,直到遍歷結束

結點的結構:

struct

node

};

深度優先遍歷函式:

//

3-23-2019 07:11 新增深度優先遍歷

void

dfs()

}

測試結果:

mohist 閱讀(

...)

編輯收藏

深度優先遍歷二叉樹

3 深度優先遍歷二叉樹。include include include typedef struct treenode 樹節點結構體定義 treenode insertsbonmyleft treenode sb treenode insertsbonmyright treenode sb char...

二叉樹深度優先遍歷

在二叉樹的深度優先遍歷中分為前序遍歷 中序遍歷和後序遍歷,其中根據前序遍歷和中序遍歷或後序遍歷和中序遍歷可以推算出完整的二叉樹。三種遍歷方式為 前序遍歷 根節點 左子樹 右子樹 中序遍歷 左子樹 根節點 右子樹 後序遍歷 左子樹 右子樹 根節點 由上述三種遍歷方式可知中序遍歷最為重要,因為中序遍歷可...

二叉樹的深度優先遍歷和廣度優先遍歷

深度優先搜尋演算法 depth first search 是搜尋演算法的一種。是沿著樹的深度遍歷樹的節點,盡可能深的搜尋樹的分支。當節點v的所有邊都己被探尋過,搜尋將回溯到發現節點v的那條邊的起始節點。這一過程一直進行到已發現從源節點可達的所有節點為止。如果還存在未被發現的節點,則選擇其中乙個作為源...