- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
资料结构的树与二元树(TreesandBinaryTrees
資料結構的樹與二元樹( Trees and
Binary Trees )
資訊科技系
林偉川
樹的基本觀念
• 「樹」(Trees )是一種模擬現實生活中樹幹和樹
枝的資料結構,屬於一種階層架構的非線性資料
結構,例如:家族族譜,如下圖所示:
2
1
樹的基本觀念
• 樹的樹根稱為「根節點」(Root ),在根節點之
下是樹的樹枝,擁有0到n個「子節點」
(Children ),即樹的「分支」(Branch ),節點
A是樹的根節點, B 、C 、D….和H是節點 A的子節
點,即樹枝,如下圖所示:
3
樹的基本觀念
• 在樹枝下還可以擁有下一層樹枝,I和J是 B的子節
點, K 、L和M是 E的子節點,節點 B是 I和的「父J
節點」( Parent ),節點E是 K 、L和M的父節點,
節點 I和J擁有共同父節點,稱為「兄弟節點」
(Siblings ),K 、L和M是兄弟節點, B 、C…和
H節點也是兄弟節點,如下圖所示:
4
2
樹的基本觀念
定義1 :樹的節點個數是一或多個有限集合,且:
(1)存在一個節點稱為根節點。
(2)在根節點下的節點分成n = 0個沒有交集的多個子集合
t1 、t2…, tn ,每一個子集合也是一棵樹,而這些樹稱為
根節點的「子樹」(Subtree )。
• 樹在各節點之間不可以有迴圈,或不連結的左、右
子樹 ,如下圖所示:
5
樹的基本觀念
• n元樹:樹的一個節點最多擁有n個子節點 。
• 二元樹(Binary Trees ):樹的節點最多只有兩個
子節點。
• 根節點 (Root ):沒有父節點的節點是根節點。
例如:節點A 。
• 葉節點 (Leaf ):節點沒有子節點的節點稱為葉
節點。例如:節點 I 、J 、C 、D 、K 、L 、M 、F 、G
和H 。
• 祖先節點 (Ancenstors ):指某節點到根節點之間
所經過的所有節點,都是此節點的祖先節點。
6
3
樹的基本觀念
• 非終端節點 (Noterminal Nodes ):除了葉節點之
外的其它節點稱為非終端節點 。例如:節點A 、B
和E是非終端節點。
• 分支度 (Dregree ):指每個節點擁有的子節點數。
例如:節點 B的分支度是 2 ,節點E的分支度是 3 。
• 階層 (Level ):如果樹根是 1 ,其子節點是2 ,依
序可以計算出樹的階層數。例如:上述圖例的節點
A階層是 1 ,B 、C到H是階層 2 ,I 、J到M是階層 3 。
• 樹高 (Height ):樹高又稱為樹深 (Depth ),指樹
的最大階層數 。例如:上述圖例的樹高是 3 。
7
二元樹的基礎
•
文档评论(0)