二叉樹的建立

2021-08-05 21:27:44 字數 745 閱讀 5919

被二叉樹折磨的死去活來,這裡是二叉樹的建立,從書上摘抄**並注上注釋,留下來方便以後學習吧,加油阿菜t-t.

從文字檔案讀入一組整數,用一顆二叉樹儲存著些整數,讀入的第乙個整數儲存在根結點root上,以後每讀乙個整數時,向root代表的二叉樹上插入乙個新的結點,儲存所讀入的整數,在最終的二叉樹上,任取乙個結點a:a的值不小於它左子樹上任何的值,它右子樹上每個值都大於a的值。附上**:

#include#includestruct treenode;

treenode * inserttree(treenode * root,int val)

if(val<=root->val)//如果val小於或等於root的值,將新結點插入到root結點的左子樹上

root->left=inserttree(root->left,val);

else//如果val大於root結點的值,將新結點插在root結點的右子樹上。

root->right=inserttree(root->right,val);

return(root);

}void deltree(treenode * root)

void printtree(treenode * root,char offset)

int main()

執行結果:

建立二叉樹 後序建立二叉樹

由後序遍歷可知,輸入順序是左結點 右結點 子樹根結點 比如輸入如下樹 ab cde 輸入序列為 e d b c a 思路 使用棧,對左結點和右結點進行壓棧 1.當輸入遇到非 且棧中元素大於等於2,則可以確定乙個小三角樹形,並將這個樹根作為下乙個小三角樹形的乙個子節點 2.當輸入遇到非 但棧中元素小於...

二叉樹的建立 遍歷1 建立二叉樹

談二叉樹,如果二叉樹都沒有正確的建立出來,那豈不是紙上談兵!括號表示式 表示方法 1.括號 括號內的東西是括號前的元素的孩子 2.逗號 逗號是為了區分左右孩子 演算法分析 給出乙個如上的括號表示式 a b d g e,f 再利用棧這個資料結構,分析一下 掃瞄整個括號表示的字串,這個字串中只有四種字元...

建立二叉樹

今天看到了乙個資料結構的筆試題目,他要求寫出建立二叉樹的程式。我想練習練習,所以想了一下其大致的思路,記錄如下 題目的要求很簡單,給出乙個字串序列 比如說a b d,e h j,k l,m n c f,g i 然後要求按照其規則建立二叉樹,題目不難但是卻花費了我不少的時間 第一步,我想到的是需要什麼...