C 來完成二叉樹的搜尋 遍歷 及查詢

2021-09-24 19:32:37 字數 1177 閱讀 1746

二叉樹結點類:

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.每一層都滿的二叉樹稱為滿二叉樹,只在最後一...