java版遍歷二叉樹

2021-09-11 22:37:34 字數 1360 閱讀 8665

首先編寫二叉樹類binarytree,**如下:

package package2;

public

class

binarytree

public

void

insert

(binarytree root,

int data)

else

}else

else}}

}

當建立好二叉樹類後可以建立二叉樹例項,並實現二叉樹的先根遍歷,中根遍歷,後根遍歷,**如下:

package package2;

public

class

binarytreepreorder

}public

static

void

inorder

(binarytree root)

}public

static

void

postorder

(binarytree root)

}public

static

void

main

(string[

] str)

; binarytree root =

newbinarytree

(array[0]

);//建立二叉樹

for(

int i=

1;i) system.out.

println

("先根遍歷:");

preorder

(root)

; system.out.

println()

; system.out.

println

("中根遍歷:");

inorder

(root)

; system.out.

println()

; system.out.

println

("後根遍歷:");

postorder

(root)

;

建立好的二叉樹圖形如下:

當執行上面的程式後結果如下:

先根遍歷:

12-9-76-35-22-16-48-46-40-90-

中根遍歷:

9–12–16–22–35–40–46–48–76–90–

後根遍歷:

9—16—22—40—46—48—35—90—76—12—

二叉樹的遍歷 Java版

下面給出二叉樹的前序 後序 中序遍歷的遞迴和非遞迴加上層序的非遞迴演算法 前序遍歷,遞迴 public void preorder treenode root 中序遍歷,遞迴 public void inorder treenode root 後序遍歷,遞迴 public void postorde...

JAVA 二叉樹遍歷

二叉樹的定義如下 public class treenode 遞迴的版本很簡單,下面僅列出非遞迴的版本。先序遍歷 public void searchpreorder treenode root while root null if root.left null else root s.pop 中序...

二叉樹的非遞迴遍歷(java版)

二叉樹的遞迴遍歷比較簡單,這裡就不聊了。今天主要聊聊二叉樹的非遞迴遍歷,主要借助於 棧 後進先出的特性來儲存節點的順序,先序遍歷和中序遍歷相對來說比較簡單,重點理解後序遍歷。1.先看看節點型別 二叉樹的節點型別 private class node 2.先序遍歷。非遞迴先序遍歷的思路如下 1.先將根...