際際滷

際際滷Share a Scribd company logo
Balanced BST and AVL tree
伎  螻襴讀 伎 蠏 ″ 伎  碁Μ 蟲
螻襴讀2 螻襴讀 蠍一 ろ磯
2015.09.21
覦: 譟
伎  碁Μ (Binary Search Trees, BST)
 (Key)-螳(Value)  ロ蠍     襭 蟲譟
 伎 碁Μ (Binary tree) 伎 (Binary Search) 螻襴讀
 -螳 
 殊 碁(Left node)螳 覿覈(Parent node)覲企 螻, るジ讓 碁
(Right node)螳 覿覈覲企
伎  碁Μ 蟲
 豕豐 豢螳 (key)-螳(value) 襭 碁(Root node)襦 
 襦 -螳 豢螳覃 (or 襭) 碁 觜蟲
 蠏 り  碁 る慨 朱 殊 (Left node)朱 豢螳
 蠏 り  碁 る慨 覃 るジ讓 (Right node)朱 豢螳
 企  碁 企 -螳 朱 れ 觜蟲
 る 螳 谿城蟆曙一 襭 碁覿 觜蟲覃 谿場螳
碁Μ 碁 蟲
 (key), 螳(value) 
 覿覈 碁, 殊 & るジ讓  碁襯 
  Leaf 碁語 
 殊  碁螳 讌 
 るジ讓 碁螳 讌 
  覿覈 碁  殊 語 
  覿覈 碁  るジ讓 語
伎 蟆 碁Μ 
碁Μ 譬一 蠏 襷讌  蟆曙 碁Μ (Height)螳 貉れ
磯  伎
螳覲旧°: O(n)
蠏 ″ 伎  碁Μ
Balanced Binary Search Tr
ees
一危郁 曙,   磯 れる 蠏 讌
螳覲旧°: O(log n)
AVL 碁Μ
 豌 朱語 牛 覦 企れ 企 一 讌 企
 Balanced BST  譬襯( 2-3 BST, Red-Black BST)
 碁Μ  覈 碁襷 殊所骸 るジ讓 觚碁Μ(sub tree) 
(height) 谿伎  蠏豺(Balance factor)襯 
 蠏豺螳 0覲企 覃 Left-heavy 觚碁Μ企, 0覲企 朱
Right-heavy 觚 碁Μ
 碁螳 曙,   (Rotation) 牛 蠏 蟲
AVL 碁Μ
蠏豺(Balance factor)
AVL 碁Μ 蟲
 碁螳 曙,   蠏 蟾讌
 曙 蠏 碁 蠏豺(Balance factor) 0 (zero)
 曙 豺 襭(root) 碁蟾讌 path  覈 覿
覈(parent) 碁れ 蠏豺 レ 譴
 覿蠏 襦 覲 碁 譴 螳 螳蟾 覿覈 碁  蠏
譟一(Rebalancing)
蠏 蟾讌 蟆曙
蠏 曙 碁襯 N, 螳 螳蟾 覿蠏  覿覈 碁襯 A
 LL : N A 殊(L) 觚碁Μ 殊 朱 曙
 LR : N A 殊 觚碁Μ るジ讓(R) 朱 曙
 RR : N A るジ讓 觚碁Μ るジ讓 朱 曙
 RL : N A るジ讓 觚碁Μ 殊 朱 曙
蠏 譟一 覦覯
蠏 曙 碁襯 N, 螳 螳蟾 覿蠏  覿覈 碁襯 A
 LL : A覿 N蟾讌 蟆暑(Path) 碁れ るジ讓 (Rotation)
 LR : A覿 N蟾讌 蟆暑(Path) 碁れ 殊 - るジ讓 
 RR : A覿 N蟾讌 蟆暑(Path) 碁れ 殊 
 RL : A覿 N蟾讌 蟆暑(Path) 碁れ るジ讓 - 殊
谿瑚
http://interactivepython.org/runestone/static/pythonds/Trees/Objectives.html
螳矧.

More Related Content

Balanced Binary Search Trees

  • 1. Balanced BST and AVL tree 伎 螻襴讀 伎 蠏 ″ 伎 碁Μ 蟲 螻襴讀2 螻襴讀 蠍一 ろ磯 2015.09.21 覦: 譟
  • 2. 伎 碁Μ (Binary Search Trees, BST) (Key)-螳(Value) ロ蠍 襭 蟲譟 伎 碁Μ (Binary tree) 伎 (Binary Search) 螻襴讀 -螳 殊 碁(Left node)螳 覿覈(Parent node)覲企 螻, るジ讓 碁 (Right node)螳 覿覈覲企
  • 3. 伎 碁Μ 蟲 豕豐 豢螳 (key)-螳(value) 襭 碁(Root node)襦 襦 -螳 豢螳覃 (or 襭) 碁 觜蟲 蠏 り 碁 る慨 朱 殊 (Left node)朱 豢螳 蠏 り 碁 る慨 覃 るジ讓 (Right node)朱 豢螳 企 碁 企 -螳 朱 れ 觜蟲 る 螳 谿城蟆曙一 襭 碁覿 觜蟲覃 谿場螳
  • 4. 碁Μ 碁 蟲 (key), 螳(value) 覿覈 碁, 殊 & るジ讓 碁襯 Leaf 碁語 殊 碁螳 讌 るジ讓 碁螳 讌 覿覈 碁 殊 語 覿覈 碁 るジ讓 語
  • 5. 伎 蟆 碁Μ 碁Μ 譬一 蠏 襷讌 蟆曙 碁Μ (Height)螳 貉れ 磯 伎 螳覲旧°: O(n)
  • 6. 蠏 ″ 伎 碁Μ Balanced Binary Search Tr ees 一危郁 曙, 磯 れる 蠏 讌 螳覲旧°: O(log n)
  • 7. AVL 碁Μ 豌 朱語 牛 覦 企れ 企 一 讌 企 Balanced BST 譬襯( 2-3 BST, Red-Black BST) 碁Μ 覈 碁襷 殊所骸 るジ讓 觚碁Μ(sub tree) (height) 谿伎 蠏豺(Balance factor)襯 蠏豺螳 0覲企 覃 Left-heavy 觚碁Μ企, 0覲企 朱 Right-heavy 觚 碁Μ 碁螳 曙, (Rotation) 牛 蠏 蟲
  • 9. AVL 碁Μ 蟲 碁螳 曙, 蠏 蟾讌 曙 蠏 碁 蠏豺(Balance factor) 0 (zero) 曙 豺 襭(root) 碁蟾讌 path 覈 覿 覈(parent) 碁れ 蠏豺 レ 譴 覿蠏 襦 覲 碁 譴 螳 螳蟾 覿覈 碁 蠏 譟一(Rebalancing)
  • 10. 蠏 蟾讌 蟆曙 蠏 曙 碁襯 N, 螳 螳蟾 覿蠏 覿覈 碁襯 A LL : N A 殊(L) 觚碁Μ 殊 朱 曙 LR : N A 殊 觚碁Μ るジ讓(R) 朱 曙 RR : N A るジ讓 觚碁Μ るジ讓 朱 曙 RL : N A るジ讓 觚碁Μ 殊 朱 曙
  • 11. 蠏 譟一 覦覯 蠏 曙 碁襯 N, 螳 螳蟾 覿蠏 覿覈 碁襯 A LL : A覿 N蟾讌 蟆暑(Path) 碁れ るジ讓 (Rotation) LR : A覿 N蟾讌 蟆暑(Path) 碁れ 殊 - るジ讓 RR : A覿 N蟾讌 蟆暑(Path) 碁れ 殊 RL : A覿 N蟾讌 蟆暑(Path) 碁れ るジ讓 - 殊