不同類型的二叉樹與彩色插圖,識別那些令人困惑的二叉樹類型的有用指南
二叉樹是一個樹數據結構,其中每個節點最多具有2個子節點。 二叉樹有幾種類型,它們的名稱讓人難以記住。
我寫這篇文章是為了瞭解5種常用的二叉樹類型。 我不只是編寫定義,還為任何特定類型的有效和無效樹結構添加了漂亮的插圖。
1.全二叉樹
完整二叉樹是一個二叉樹,其中每個節點都有0或2個子節點。
有趣的事實:對於完整的二叉樹,以下等式始終為真。
葉子節點數=內部節點數+ 1
2.完全的二叉樹
完全的二叉樹具有除最後一級以外的所有等級的節點,並且在最後一級中,所有節點都儘可能位於左側。
有趣的事實:二叉堆是完全二叉樹的重要用例。
3.完美的二叉樹
完美二叉樹是一種二叉樹,其中所有內部節點都有2個子節點,並且所有葉節點處於相同的深度或相同的級別。
有趣的事實:高度為H的完美二叉樹中的節點總數為2 ^ H_1。
4.平衡二叉樹
平衡二叉樹是一種二叉樹,其中每個節點的左子樹和右子樹的高度最多相差1。
有趣的事實:AVL樹和紅黑樹是眾所周知的數據結構,用於生成/維護平衡二叉搜索樹。 搜索,插入和刪除操作的時間為O(log n)。
5.退化(或病理)二叉樹
簡併二叉樹是一個二叉樹,其中每個父節點只有一個子節點。
有趣的事實:簡併二叉樹的高度等於該樹中節點的總數。
(本文翻譯自Anand K Parmar的文章《Different Types of Binary Tree with colourful illustrations》,參考:https://towardsdatascience.com/5-types-of-binary-tree-with-cool-illustrations-9b335c430254)
閱讀更多 聞數起舞 的文章