實驗目的:
1.熟悉樹的各種儲存結構的特性
2.掌握採用二叉鍊錶作為儲存結構的樹的相關演算法
實驗內容:
***1.按先序序列構造二叉鍊錶(creatbitree),
***2.實現函式用於計算結點的總個數(countnode)
***3.實現函式用於計算葉子結點的個數(countleaf)
***4. 實現函式(inorder)用於輸出中序遍歷序列
5.實現函式(postorder)用於輸出後序遍歷序列
6.函式(nrpreorder)用於非遞迴方法輸出先序序列//可選做
#include#include#includetypedef struct node
bitnode,*bittree;
/*按先序遍歷序列輸入樹上的元素,生成二叉鍊錶*/
void creattree(bittree &t) }
/*輸出中序遍歷序列*/
void inorder(bittree t)
}/*輸出後序遍歷序列*/
void postorder(bittree t)
}/*計算結點的總個數*/
int nodes(bittree t)
}/*計算葉子結點的個數*/
int leafs(bittree t)
}void showselect()
void main()
case 2:
case 3:
case 4:
case 5:
case 0:
exit(0);}}
}
樹與二叉數
a.樹的基本概念 樹是簡單的非線性結構,樹中有且僅有乙個沒有前驅的結點稱為 根 其餘結點分成m個互不相交的有限集合t1,t2,tm,每個集合又是一棵樹,稱t1,t2,tm m為根節點的子數。父結點 每乙個結點只有乙個前件,無前件的結點只有乙個,稱為樹的根節點 簡稱樹的跟 子結點 每乙個節點可以接多個...
二叉查詢數
二叉查詢樹,或者是一顆空樹,具備以下性質得二叉樹 1,若它的左子樹不空,則其左子樹上的所有結點的值均小於它根結點的值 2,若它的右子樹不空,則其右子樹上的所有結點的值均大於它根結點的值 3,它的左 右子樹也分別為二叉查詢樹 具體如下圖 查詢操作 在二叉查詢樹中查詢x的過程如下 1 若二叉樹是空樹,則...
二叉數順序棧
第五章 樹和二叉樹翻轉學習任務 一 本章的重點 分二大部分 樹和二叉樹。從邏輯結構上分,樹是表示一對多和一種結構,一般用於表達 祖先後代 上下級和整合部分 等相關關係。本章學習,在前面的線性表相關的基礎上,進一步複雜的資料結構。掌握具體層次物件的資料結構表達和儲存方法,以及操作方法。了解樹特別是二叉...