二叉樹實現

2021-09-28 21:23:05 字數 1458 閱讀 4473

課內最近學了二叉樹,參考書上的**,做了二叉樹的實現,尚不完善,還有很多地方不明白。

//二叉樹實現。

#define maxsize 100

#include

using

namespace std;

//定義二叉樹節點

class

btnode

;void

createbt

(btnode *

&bt,

char

*str)

;void

destroybt

(btnode *

&bt)

;btnode *

findnode

(btnode *bt,

double x)

;btnode *

lchildnode

(btnode *p)

;btnode *

rchildnode

(btnode *p)

;int

btheight

(btnode *bt)

;void

displaybt

(btnode *bt)

;btnode *

lchildnode

(btnode *p)

btnode *

rchildnode

(btnode *p)

//列印二叉樹

void

displaybt

(btnode *bt)}}

//尋找節點

btnode *

findnode

(btnode *bt,

double x)

else

if(bt-

>data==x)

else

else}}

//銷毀二叉樹

void

destroybt

(btnode *

&bt)

//cout<<"the destroy function is calling"<}

//根據括號表示法,建立二叉樹。利用堆疊實現。

void

createbt

(btnode *

&bt,

char

*str)

//掃瞄到逗號時,令k=2,表示開始建立右樹。

else

if(str[i]

==','

)//掃瞄到右括號時,對棧頂元素進行退棧操作。

else

if(str[i]

==')'

)//其他情況:掃瞄到元素值時

else

else

if(k==2)

}}i++;}

}int

main()

二叉樹實現

include include include include define maxsize 100 define ok 1 define error 0 define true 1 define false 0 typedef int status typedef int telemtype ty...

二叉樹實現

pragma once include include typedef char btdatatype typedef struct binarytreenode btnode include queue.h 通過前序遍歷的陣列 abd e h cf g 構建二叉樹 btnode binarytre...

二叉樹 二叉樹

題目描述 如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹...