Threaded Binary Tree
DefinitionA binary search tree in which each node  uses an otherwise-empty left child link to  refer to the nodes in-order...
Threaded Binary Trees• Two many null pointers in current  representation  of binary trees     n: number of nodes     numbe...
Threaded Binary Trees (Continued)If ptr->left_child is null,   replace it with a pointer to the node that would be   visit...
A Threaded Binary Tree                root            A                                                      dangling     ...
Data Structures for Threaded BTleft_thread   left_child   data   right_child right_thread  TRUE                           ...
• Dangling can be solved as follows  – Introduce a header node.  – The left and right pointer of the header node    are tr...
Memory Representation of A Threaded BT                            root                             --                     ...
• Right-threaded tree:• A variant of a threaded tree in which only  the right thread, i.e. link to the successor,  of each...
Advantages of Threaded Tree• It reduces the time complexity of algorithm.• Operation like traversal, insertion, deletion c...
Application of Tree• Expression Tree• Game Tree
Infix, prefix, and postfix notation• representation of math expressions as a binary tree   – operators have their left and...
Expression example
Expression tree example
Game Tree• Tree generated for games such as tic-tac-  toe• Consider all the possible position for the  given position. And...
Heap Sort• It is based on tree structure.• Heap sort is in two phase  – The entries are arranged in the list satisfying   ...
Construction of heap• First construct a complete binary tree• There are two types of heap- min heap or  ascending heap or ...
• Consider the elements present at a level  one less than the maximum level. They  are converted to heap in the same way a...
Phase two• Remove the root of tree and place it to last  and re-create the heap in descending  order and repeat the proces...
Upcoming SlideShare
Loading in...5
×

Threaded binarytree&heapsort

1,882

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,882
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
81
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Threaded binarytree&heapsort

  1. 1. Threaded Binary Tree
  2. 2. DefinitionA binary search tree in which each node uses an otherwise-empty left child link to refer to the nodes in-order predecessor and an empty right child link to refer to its in-order successor.
  3. 3. Threaded Binary Trees• Two many null pointers in current representation of binary trees n: number of nodes number of non-null links: n-1 total links: 2n null links: 2n-(n-1)=n+1• Replace these null pointers with some useful “threads”.
  4. 4. Threaded Binary Trees (Continued)If ptr->left_child is null, replace it with a pointer to the node that would be visited before ptr in an inorder traversalIf ptr->right_child is null, replace it with a pointer to the node that would be visited after ptr in an inorder traversal
  5. 5. A Threaded Binary Tree root A dangling B Cdangling D E F G inorder traversal: H I H, D, I, B, E, A, F, C, G
  6. 6. Data Structures for Threaded BTleft_thread left_child data right_child right_thread TRUE FALSE TRUE: thread FALSE: childtypedef struct threaded_tree *threaded_pointer;typedef struct threaded_tree { short int left_thread; threaded_pointer left_child; char data; threaded_pointer right_child; short int right_thread; };
  7. 7. • Dangling can be solved as follows – Introduce a header node. – The left and right pointer of the header node are treated as normal links and are initialized to point to header node itself
  8. 8. Memory Representation of A Threaded BT root -- f f f A f f B f f C f f D f t E t t F t t Gt H t t I t
  9. 9. • Right-threaded tree:• A variant of a threaded tree in which only the right thread, i.e. link to the successor, of each node is maintained.
  10. 10. Advantages of Threaded Tree• It reduces the time complexity of algorithm.• Operation like traversal, insertion, deletion can be done without using recursive algorithm.• It becomes very easy to find out inorder successor of any node ‘n’ in a threaded binary tree. If the right thread of n is true or 1 then the node pointed by its right pointer is the desired information successor. If the right thread of ‘n’ is false or 0 then the inorder successor must be on the right subtree of ‘n’.
  11. 11. Application of Tree• Expression Tree• Game Tree
  12. 12. Infix, prefix, and postfix notation• representation of math expressions as a binary tree – operators have their left and right operands as subtrees – literal values are stored as leaves• notations – prefix: Polish notation – infix: standard notation – postfix: reverse Polish notation
  13. 13. Expression example
  14. 14. Expression tree example
  15. 15. Game Tree• Tree generated for games such as tic-tac- toe• Consider all the possible position for the given position. And find the best solution to win.
  16. 16. Heap Sort• It is based on tree structure.• Heap sort is in two phase – The entries are arranged in the list satisfying the requirement of a heap – We repeatedly remove the top of the heap and promote another entry to take its place.
  17. 17. Construction of heap• First construct a complete binary tree• There are two types of heap- min heap or ascending heap or max heap or descending heap
  18. 18. • Consider the elements present at a level one less than the maximum level. They are converted to heap in the same way as replacing the node of a heap.• In next step the elements that are present at a level two less than the maximum level of the tree are considered• Likewise in each step one level is decremented and all the subtrees at that level are converted to heaps• Eg 13, 4, 11, 15, 59, 27, 19, 3, 92, 5
  19. 19. Phase two• Remove the root of tree and place it to last and re-create the heap in descending order and repeat the process.• Solution on board.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×