avl tree n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
AVL Tree PowerPoint Presentation
Download Presentation
AVL Tree

Loading in 2 Seconds...

play fullscreen
1 / 25

AVL Tree - PowerPoint PPT Presentation


  • 135 Views
  • Uploaded on

AVL Tree. Chapter 8 ( cont ’)Part3. Search Trees. Two standard search trees : Binary Search Trees (non-balanced ) All items in left sub-tree are less than root All items in right sub-tree are greater than or equal to the root Each sub-tree is a binary search tree AVL trees (balanced ).

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'AVL Tree' - fola


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
avl tree

AVL Tree

Chapter 8 (cont’)Part3

search trees
Search Trees
  • Two standard search trees:
    • Binary Search Trees (non-balanced)
      • All items in left sub-tree are less than root
      • All items in right sub-tree are greater than or equal to the root
      • Each sub-tree is a binary search tree
    • AVL trees (balanced)
bst traversals
BST Traversals
  • A preorder traversal of the BST produces:

23 18 12 20 44 35 52

  • A postordertraversal of the BST produces:

12 20 18 35 52 44 23

  • An inorder traversal of the BST produces:

12 18 20 23 35 44 52 (a sorted list!)

slide5

2- AVL Trees

  • Invented by Adelson-Velskii and Landis
  • Height-balanced binary search tree where the heights of sub-trees differ by no more than 1:
  • | HL – HR | <= 1
  • Search effort for an AVL tree is O(log2n)
  • Each node has a balance factor
  • Balance factors may be:
    • Left High (LH) = +1 (left sub-tree higher than right sub-tree)
    • Even High (EH) = 0 (left and right sub-trees same height)
    • Right High (RH) = -1 (right sub-tree higher than left sub-tree)
balancing trees
Balancing Trees
  • Insertions and deletions potentially cause a tree to be imbalanced
  • When a tree is detected as unbalanced, nodes are balanced by rotating nodes to the left or right
  • Four imbalance cases:
    • Left of left: the sub-tree of a left high tree has become left high
    • Right of right: the sub-tree of a right high tree has become right high
    • Right of left: the sub-tree of a left high tree has become right high
    • Left of right: the sub-tree of a right high tree has become left high
  • Each imbalance case has simple and complex rotation cases
case 1 left of left
Case 1: Left of Left
  • The sub-tree of a left high tree has become left high
  • Simple right rotation: Rotate the out of balance node (the root) to the right
  • Complex right rotation: Rotate root to the right, so the old root is the right sub-tree of the new root; the new root's right sub-tree is connected to the old root's left sub-tree
slide13

Case 2: Right of Right

  • Mirror of Case 1: The sub-tree of a right high tree has become right high
  • Simple left rotation: Rotate the out of balance node (the root) to the left
  • Complex left rotation: Rotate root to the left, so the old root is the left sub-tree of the new root; the new root's left sub-tree is connected to the old root's right sub-tree
slide15

Case 3: Right of Left

  • The sub-tree of a left high tree has become right high
  • Simple double rotation right: Rotate left sub-tree to the left; rotate root to the right, so the old root's left node is the new root
  • Complex double rotation right: Rotate the right-high left sub-tree to the left; rotate the left-high left sub-tree to the right
slide17

Case 4: Left of Right

  • Mirror of Case 3: The sub-tree of a right high tree has become left high
  • Simple double rotation right: Rotate right sub-tree to the right; rotate root to the left, so the old root's right node is the new root
  • Complex double rotation right: Rotate the left-high right sub-tree to the right; rotate the right-high right sub-tree to the left
avl node structure
AVL Node Structure

Node

key <keyType>

data <dataType>

Left <pointer to Node>

right <pointer to Node>

bal <LH, EH, RH> // Balance factor

End Node

slide20

multiway search tree

  • A tree was defined as either an empty structure or a structure whose children are disjoint trees.
  • This means that each node in some kind of trees can have more than two children.
    • This tree is called a multiway tree of order m, or m-way tree
multiway search tree
multiway search tree
  • A multiway search tree of order m is a multiway tree in which :
    • Each node has m children and m-1 keys.
    • The keys in each node are in ascending order.
    • The keys in the first i children are smaller than the ith key.
    • The keys in the last m-i children are larger than the ith key.
slide23

B-Tree

  • B- Trees operates closely with secondary storage.
    • Property: the size of a node can be made as large as a block.
  • A B- tree of order m is a multi way search tree with the following properties:
    • The root has at least two subtrees unless it is a leaf.
    • Each nonroot and each nonleaf node holds k-1 keys and k pointers to subtrees where [m/2] ≤ k ≤ m.
    • Each leaf node holds k-1 keys where [m/2] ≤ k ≤ m.
    • All leaves are usually on the same level.
end of chapter
End Of Chapter

References:

Text book, chapter 8: Binary Trees