思路:使用遞迴進行建立。
public
static heronode createtree
(heronode node)
else
return node;
}
思路:使用遞迴進行複製
public
static heronode copybinarytree
(heronode node)
//建立乙個臨時節點,用於返回給上一層遞迴程式使用
heronode copynode =
newheronode
(node.no, node.heroname)
;//給根節點的右子節點賦值,呼叫copy方法,方法遞迴進行
copynode.left =
copybinarytree
(node.left)
; copynode.right =
copybinarytree
(node.right)
;return copynode;
}
思路:使用遞迴進行查詢,
public
static
intdepthtree
(heronode node)
else
return n+1;
}}
思路:使用遞迴進行統計
public
static
intcountnode
(heronode node)
return
countnode
(node.left)
+countnode
(node.right)+1
;}
public
static
intcountlifenode
(heronode node)
if(node.left == null && node.right == null)
else
}
二叉樹操作
最近在溫習資料結構,把書中的 寫了一遍,下面是二叉樹的基本操作,包括 1 四種遍歷二叉樹的方法 前序遍歷 中序遍歷 後序遍歷和層序遍歷,其中又包括了遞迴的和非遞迴 2 兩種建立二叉樹的方法 根據二叉樹的前序和中序序列建立二叉樹和根據二叉樹的中序後序序列建立二叉樹。1.二叉樹的儲存結構 headfil...
二叉樹操作
本文章主要包括了以下內容 建立二叉樹類。二叉樹的儲存結構使用鍊錶。供操作 前序遍歷 中序遍歷 後序遍歷 層次遍歷 計算二叉樹結點數目 計算二叉樹高度。接收鍵盤錄入的二叉樹前序序列和中序序列 各元素各不相同 輸出該二叉樹的後序序列。下面是c include include include using ...
二叉樹操作
includeusing namespace std struct btree 建立二叉樹 void createtree btree t else 遞迴,先序遍歷 void preorder btree temp 遞迴,中序遍歷 void inorder btree temp 遞迴,後序遍歷 vo...