Tree相關概念及特色總結

平衡:樹的左右子樹的高度差距在一個可控的範圍內數組

  1. B-TREE
    多路搜索樹
  2. AVL
    平衡二叉樹:
    空樹或它的左右兩個子樹的高度差的絕對值不超過1,左右兩個子樹都是一顆平衡二叉樹。
  3. RB-TREE
    紅黑樹:
    紅黑樹屬於平衡二叉樹,但不是嚴格的平衡二叉樹,相對接近平衡的二叉樹,
    最大深度<=最小深度的兩倍(即沒有一條路徑比其餘路徑長出兩倍)
  4. BST
    二叉搜索樹(Binary Search Tree):
  5. BBST
    平衡二叉排序樹(Balance Binary Sort Tree)

紅黑樹概念:性能

紅黑樹特色: 排序

紅黑樹應用場景:接口

  • TreeMap
    基於紅黑樹實現的排序Map,默認按key(實現comparable接口)來比較排序。
    TreeMap的增刪查改以及統計操做的時間複雜度都爲O(logn)
  • TreeSet
  • JDK1.8中
    HashMap每一個數組節點掛的元素個數超過8
    ConcurrentHashMap每一個數組節點掛的元素個數超過8

紅黑樹與AVL樹對比:效率

  • 紅黑樹的查詢性能略遜色於AVL樹
    紅黑樹放棄了追求徹底平衡,追求大體平衡,
    紅黑樹的高度相對更高,所以
  • 紅黑樹的插入和刪除性能比AVL效率高
相關文章
相關標籤/搜索