二叉樹的三種遍歷方式java實現

2021-08-15 19:25:33 字數 1009 閱讀 3316

1.先(根)序遍歷的遞迴演算法定義:

若二叉樹非空,則依次執行如下操作:

⑴ 訪問根結點;

⑵ 遍歷左子樹;

⑶ 遍歷右子樹。

2.中(根)序遍歷的遞迴演算法定義:

若二叉樹非空,則依次執行如下操作:

⑴遍歷左子樹;

⑵訪問根結點;

⑶遍歷右子樹。

3.後(根)序遍歷得遞迴演算法定義:

若二叉樹非空,則依次執行如下操作:

⑴遍歷左子樹;

⑵遍歷右子樹;

⑶訪問根結點。

package com.ruicai.test;

/** * @author dsx

*/public class binarytree

public binarytree getdata()

public void setdata(binarytree data)

public binarytree getleft()

public void setleft(binarytree left)

public binarytree getright()

public void setright(binarytree right)

public binarytree(binarytree data,binarytree left,binarytree right)

/*** 前序遍歷 ,遞迴方式

* @param root:給出根節點

*/public void preorder(binarytree root) }

/*** 中序遍歷

* @param root

*/public void inorder(binarytree root) }

/*** 後序遍歷

* @param root

*/public void postorder(binarytree root)

}}

二叉樹三種遍歷方式

三種遍歷方式是按照根節點的訪問順序來定義的 1 前序遍歷 先訪問根結點 然後遍歷左子樹,最後遍歷右子樹 並且,在遍歷左 右子樹時,仍然先訪問根結點,然後遍歷左子樹,最後遍歷右子樹。根左右 2 中序遍歷 先遍歷左子樹 然後訪問根結點,最後遍歷右子樹 並且,在遍歷左 右子樹時,仍然先遍歷左子樹,然後訪問...

重建二叉樹 遍歷二叉樹的三種方式

輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。示例 前序遍歷 preorder 3,9,20,15,7 中序遍歷 inorder 9,3,15,20,7 返回如下的二叉樹 3 9 20 15 7限制 0 節點個數 5000 這個題的解法...

二叉樹的三種遍歷方式總結

最近學了二叉樹的三種遍歷方式,即前序遍歷,中序遍歷,後序遍歷三種,仔細思索後,在此簡單總結一下。一.二叉樹示意圖 假設有一顆二叉樹如下 二.遍歷分析 每一顆二叉樹由根節點,左子樹,右子樹三個部分組成,規定先遍歷左子樹,再遍歷右子樹,這樣一來就有了三種遍歷方式,按照遍歷根節點的先後順序來劃分,根 左 ...