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.
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.
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.
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.
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.
• 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.
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.
• 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.
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.
Application of Tree• Expression Tree• Game Tree
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
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.
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.
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.
• 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.
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.
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.
Be the first to comment