二叉樹結點類:
public
class
node
public
node(
intvalue)
public
node getleftnode()
public
node getrightnode()
public
intgetvalue()
//////
查詢某一節點
///
///根節點
///要查詢的值
///public
node findnode(node root,
intvalue)
if(root.getvalue()
==value)
if(value
<
root.getvalue())
else
return
null;}
//////
先根遍歷
///
///
public
static
void
preorder(node root)
}///
///後根遍歷
///
///
public
static
void
afterorder(node root)
}///
///中序遍歷二叉樹
///
///
public
static
void
midorder(node root)
}public
static
intleafnodecount =0
;public
static
void
count_leafnode(node root)
if(root.getleftnode()
==null
&&root.getrightnode()
==null
)else}}
為了簡便起見,將遍歷等相關方法都寫在了該節點中。
以下是主程式呼叫:
public
void
showmain()
二叉樹搜尋遍歷
include include define max size 128 typedef struct bnode btree,bnode api介面 bool insertbtree btree root,bnode node 插入樹 bool deletebtree btree root,int ...
二叉查詢樹(BST)及二叉樹的遍歷
一 二叉查詢樹 bst 1 二叉查詢樹的特徵 二叉查詢樹 bst 也稱為二叉搜尋樹或二叉排序樹。二叉查詢樹的節點包含鍵值key。二叉查詢樹或者是一棵空樹,否則要求 若它的左子樹不為空,那麼左子樹上所有節點的key都小於根節點的key。若它的右子樹不為空,那麼右子樹上所有節點的key都大於根節點的ke...
二叉樹及二叉樹的遍歷
二叉樹的定義 樹的度為2的樹。二叉樹的遞迴定義 二叉樹或者是一棵空樹,或者是一棵由乙個根結點和兩棵互不相交的左子樹和右子樹所組成的非空樹,而左右子樹又都是一棵二叉樹。1.第i層上至多有2的i 1次方個結點。2.深度為h的二叉樹至多有2的h次方減1個結點。3.每一層都滿的二叉樹稱為滿二叉樹,只在最後一...