SlideShare a Scribd company logo
Presented to:
Md. Shamsujjoha
 Senior Lecturer of CSE department
 East West University
Presented by:
 Md. Khabbab Hossain Tusher
 Date:03/04/2016
Threaded binary tree
A binary search tree in which each node uses an otherwise-empty left
child link to refer to the node's in-order predecessor and an empty
right child link to refer to its in-Order Successor.
Definition
Slide 1
A Simple Binary Tree
A
B
D
E
C
GF
Slide 2
A
B C
Null D Null Null E Null Null G NullNull F Null
Slide 3
Threaded binary tree
Threaded Binary Tree
 In above binary tree, there are 8 null pointers & actual 6
pointers.
 In all there are 14 pointers.
 We can generalize it that for any binary tree with n nodes
there will be (n+1) null pointers and 2n total pointers.
 The objective here to make effective use of these null
pointers.
 A. J. perils & C. Thornton jointly proposed idea to make
effective use of these null pointers.
 According to this idea we are going to replace all the null
pointers by the appropriate pointer values called threads.
Slide 4
 And binary tree with such pointers are called threaded tree.
 In the memory representation of a threaded binary tree, it is necessary
to distinguish between a normal pointer and a thread.
Slide 5
Threaded Binary Tree:
One-Way
 We will use the right thread only in this case.
 To implement threads we need to use in-order successor of the tree
Slide 6
Threaded Binary Tree:
One-Way
A
B C
Null D Null E Null G NullNull F
Inorder Traversal of The tree: D, B, E, A, F, C, G
Slide 7
Two way Threaded Tree/Double Threads
 Again two-way threading has left pointer of the first node and right
pointer of the last node will contain the null value. The header nodes
is called two-way threading with header node threaded binary tree.
Slide 8
A
B
D
Inorder Traversal of The tree: D, B, E, A, F, C, G
E
C
F G
Dangling
Dangling
Slide 9
• 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.
Slide 10
A
B
D
Inorder Traversal of The tree: D, B, E, A, F, C, G
E
C
F G
Head
Slide 11
Structure of Thread BT
Node structure
For the purpose of our evaluation algorithm, we assume each
node has five fields:
LTag Left data Right RTag
We define this node structure in C as:
Struct Node{
int data;
struct Node *Left,*Right;
bool Ltag;
boolRtag;
};
Slide 12
L.Tag L.Child head R.child
R.Tag
1 A 1
1 1
0 D 0 0 E 0 0 F 0 0 G 0
1 B 1 1 C 1
Inorder Traversal of The tree: D B E A F C G
Slide 13
Threaded Tree Traversal
• We start at the leftmost node in the tree, print it, and follow
its right thread
• If we follow a thread to the right, we output the node and
continue to its right.
• If we follow a link to the right, we go to the leftmost node,
print it, and continue.
Slide 14
8
75
3
1
6
Start at leftmost node, print it
Output
1
9
Slide 15
8
75
3
1
6
Follow thread to right, print node
Output
1
3
9
Slide 16
8
75
3
1
6
Follow link to right, go to leftmost
node and print
Output
1
3
5
9
Slide 17
8
75
3
1
6
Follow thread to right, print node
Output
1
3
5
6
9
Slide 18
8
75
3
1
6
Follow link to right, go to
leftmost node and print
Output
1
3
5
6
7
9
Slide 19
8
75
3
1
6
9
Follow thread to right, print node
Output
1
3
5
6
7
8
Slide 20
8
75
3
91
6
Follow link to right, go to
leftmost node and print
Output
1
3
5
6
7
8
9
Slide 21
void inOrder(struct Node *root)
{
struct Node *cur = leftmost(root);
while (cur != NULL)
 {
 printf("%d ", cur->data);

 // If this node is a thread node,
then go to
// inorder successor
 if (cur->rightThread)
 cur = cur->right;
 else // Else go to the leftmost child
in right subtree
 cur = leftmost(cur->right);
 }
 }
8
75
3
1
6
9
Slide 22
Threaded Binary Trees
 In threaded binary trees, The
null pointers are used as thread.
 We can use the null pointers
which is a efficient way to use
computers memory.
 Traversal is easy. Completed
without using stack or
reccursive function.
 Structure is complex.
 Insertion and deletion takes
more time.
Normal Binary Trees
 In a normal binary trees, the null
pointers remains null.
 We can’t use null pointers so it is a
wastage of memory.
 Traverse is not easy and not
memory efficient.
 Less complex than Threaded binary
tree.
 Less Time consuming than
Threaded Binary tree.
Comparison of Threaded BT
Slide 23
 Inserting a node to Threaded Binary Tree:
Inserting a node X as the right child of a nodes.
1st Case:
- If G has an empty right subtree, then the insertion is simple
Slide 24
A
B
D
Inserting X as a right child of G
E
C
F G
Head
X
New inorder traversal is: D,B,E,A,F,C,G,X
Slide 25
2nd Case:
If the right subtree of C is not empty, then this right child is made
the right child of X after insertion.
Slide 26
A
B
D
New Inorder Traversal of The tree: D, B, E, A, F, C, X,G
E
F
G
Head
x
C
Slide 27
Advantage
 1. By doing threading we avoid
the recursive method of
traversing a Tree , which doesn’t
use of stack and consumes a lot
of memory and time .
 2 . The node can keep record of
its root .
 3. Backward Traverse is
possible.
 4. Applicable in most types of
the binary tree.
Disadvantage
 1. This makes the Tree more
complex .
 2. More prone to errors when
both the child are not present &
both values of nodes pointer to
their ancestors.
 3. Lot of time consumes when
deletion or insertion is
performed.
Threaded binary tree
Slide 28
 Same as any kind of Binary Tree.
 Used in search and Traverse
based work
APPLICATIONS
Slide 29
Conclusion
 Excellent concept in modern computer science.
 Saves Time and memory.
 Traversal and search are very efficient.
 Insertion and deletion are not so efficient.
Slide 30
References
 http://www.geeksforgeeks.org/inorder-tree-traversal-without-
recursion-and-without-stack/
 http://www.delorie.com/gnu/docs/avl/libavl_183.html
 http://www.math-
cs.gordon.edu/courses/cs321/lectures/threaded.html
 https://prezi.com/1yitau0wnwlg/threaded-binary-tree-in-data-
structures/
 http://stackoverflow.com/questions/6744770/confusion-with-
threaded-binary-tree
 Various Text Book for data structure.
Threaded Binary Tree
Contacts us
:tkhabbab@gmail.com/
khabbabcse@ewu.edu.bd
Ad

More Related Content

What's hot (20)

Graph in data structure
Graph in data structureGraph in data structure
Graph in data structure
Abrish06
 
Linked list
Linked listLinked list
Linked list
KalaivaniKS1
 
Threaded Binary Tree.pptx
Threaded Binary Tree.pptxThreaded Binary Tree.pptx
Threaded Binary Tree.pptx
pavankumarjakkepalli
 
B and B+ tree
B and B+ treeB and B+ tree
B and B+ tree
Ashish Arun
 
Binary search tree(bst)
Binary search tree(bst)Binary search tree(bst)
Binary search tree(bst)
Hossain Md Shakhawat
 
Doubly Linked List
Doubly Linked ListDoubly Linked List
Doubly Linked List
Ninad Mankar
 
Binary tree
Binary  treeBinary  tree
Binary tree
Vanitha Chandru
 
Spanning trees
Spanning treesSpanning trees
Spanning trees
Shareb Ismaeel
 
Binary Tree Traversal
Binary Tree TraversalBinary Tree Traversal
Binary Tree Traversal
Dhrumil Panchal
 
BINARY TREE REPRESENTATION.ppt
BINARY TREE REPRESENTATION.pptBINARY TREE REPRESENTATION.ppt
BINARY TREE REPRESENTATION.ppt
SeethaDinesh
 
Binary Search Tree in Data Structure
Binary Search Tree in Data StructureBinary Search Tree in Data Structure
Binary Search Tree in Data Structure
Dharita Chokshi
 
linked list in data structure
linked list in data structure linked list in data structure
linked list in data structure
shameen khan
 
trees in data structure
trees in data structure trees in data structure
trees in data structure
shameen khan
 
Data Structure and Algorithms Binary Search Tree
Data Structure and Algorithms Binary Search TreeData Structure and Algorithms Binary Search Tree
Data Structure and Algorithms Binary Search Tree
ManishPrajapati78
 
Doubly Linked List
Doubly Linked ListDoubly Linked List
Doubly Linked List
V.V.Vanniaperumal College for Women
 
Terminology of tree
Terminology of treeTerminology of tree
Terminology of tree
RacksaviR
 
1.1 binary tree
1.1 binary tree1.1 binary tree
1.1 binary tree
Krish_ver2
 
AVL Tree Data Structure
AVL Tree Data StructureAVL Tree Data Structure
AVL Tree Data Structure
Afaq Mansoor Khan
 
Binary Search Tree
Binary Search TreeBinary Search Tree
Binary Search Tree
sagar yadav
 
Stacks IN DATA STRUCTURES
Stacks IN DATA STRUCTURESStacks IN DATA STRUCTURES
Stacks IN DATA STRUCTURES
Sowmya Jyothi
 

Viewers also liked (20)

Threaded binarytree&heapsort
Threaded binarytree&heapsortThreaded binarytree&heapsort
Threaded binarytree&heapsort
Ssankett Negi
 
THREADED BINARY TREE AND BINARY SEARCH TREE
THREADED BINARY TREE AND BINARY SEARCH TREETHREADED BINARY TREE AND BINARY SEARCH TREE
THREADED BINARY TREE AND BINARY SEARCH TREE
Siddhi Shrivas
 
Trees data structure
Trees data structureTrees data structure
Trees data structure
Sumit Gupta
 
(Binary tree)
(Binary tree)(Binary tree)
(Binary tree)
almario1988
 
Full threded binary tree
Full threded binary treeFull threded binary tree
Full threded binary tree
Soham Kansodaria
 
Representation of binary tree in memory
Representation of binary tree in memoryRepresentation of binary tree in memory
Representation of binary tree in memory
Rohini Shinde
 
Trees, Binary Search Tree, AVL Tree in Data Structures
Trees, Binary Search Tree, AVL Tree in Data Structures Trees, Binary Search Tree, AVL Tree in Data Structures
Trees, Binary Search Tree, AVL Tree in Data Structures
Gurukul Kangri Vishwavidyalaya - Faculty of Engineering and Technology
 
Tree in data structure
Tree in data structureTree in data structure
Tree in data structure
ghhgj jhgh
 
Queue data structure
Queue data structureQueue data structure
Queue data structure
anooppjoseph
 
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
sumitbardhan
 
16 Fibonacci Heaps
16 Fibonacci Heaps16 Fibonacci Heaps
16 Fibonacci Heaps
Andres Mendez-Vazquez
 
Rfid
RfidRfid
Rfid
Singavarapu Vijay Kumar
 
358 33 powerpoint-slides_12-heaps_chapter-12
358 33 powerpoint-slides_12-heaps_chapter-12358 33 powerpoint-slides_12-heaps_chapter-12
358 33 powerpoint-slides_12-heaps_chapter-12
sumitbardhan
 
Heap tree
Heap treeHeap tree
Heap tree
Shankar Bishnoi
 
data structure, stack, stack data structure
data structure, stack, stack data structuredata structure, stack, stack data structure
data structure, stack, stack data structure
pcnmtutorials
 
Array data structure
Array data structureArray data structure
Array data structure
maamir farooq
 
Programming in c++
Programming in c++Programming in c++
Programming in c++
Christalin Nelson
 
data structure(tree operations)
data structure(tree operations)data structure(tree operations)
data structure(tree operations)
Waheed Khalid
 
Set data structure
Set data structure Set data structure
Set data structure
Tech_MX
 
Fibonacci Heap
Fibonacci HeapFibonacci Heap
Fibonacci Heap
Anshuman Biswal
 
Threaded binarytree&heapsort
Threaded binarytree&heapsortThreaded binarytree&heapsort
Threaded binarytree&heapsort
Ssankett Negi
 
THREADED BINARY TREE AND BINARY SEARCH TREE
THREADED BINARY TREE AND BINARY SEARCH TREETHREADED BINARY TREE AND BINARY SEARCH TREE
THREADED BINARY TREE AND BINARY SEARCH TREE
Siddhi Shrivas
 
Trees data structure
Trees data structureTrees data structure
Trees data structure
Sumit Gupta
 
Representation of binary tree in memory
Representation of binary tree in memoryRepresentation of binary tree in memory
Representation of binary tree in memory
Rohini Shinde
 
Tree in data structure
Tree in data structureTree in data structure
Tree in data structure
ghhgj jhgh
 
Queue data structure
Queue data structureQueue data structure
Queue data structure
anooppjoseph
 
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
358 33 powerpoint-slides_11-efficient-binary-trees_chapter-11
sumitbardhan
 
358 33 powerpoint-slides_12-heaps_chapter-12
358 33 powerpoint-slides_12-heaps_chapter-12358 33 powerpoint-slides_12-heaps_chapter-12
358 33 powerpoint-slides_12-heaps_chapter-12
sumitbardhan
 
data structure, stack, stack data structure
data structure, stack, stack data structuredata structure, stack, stack data structure
data structure, stack, stack data structure
pcnmtutorials
 
Array data structure
Array data structureArray data structure
Array data structure
maamir farooq
 
data structure(tree operations)
data structure(tree operations)data structure(tree operations)
data structure(tree operations)
Waheed Khalid
 
Set data structure
Set data structure Set data structure
Set data structure
Tech_MX
 
Ad

Similar to Threaded Binary Tree (20)

Binary search Tree and avl tree , treee.ppt
Binary search Tree and avl tree , treee.pptBinary search Tree and avl tree , treee.ppt
Binary search Tree and avl tree , treee.ppt
sjain87654321
 
Data Structures
Data StructuresData Structures
Data Structures
Nitesh Bichwani
 
cs201-tree-graph_DATAStructur_Algorithm.ppt
cs201-tree-graph_DATAStructur_Algorithm.pptcs201-tree-graph_DATAStructur_Algorithm.ppt
cs201-tree-graph_DATAStructur_Algorithm.ppt
abhaysharma999437
 
Trees unit 3
Trees unit 3Trees unit 3
Trees unit 3
praveena p
 
Tree and Binary Search tree
Tree and Binary Search treeTree and Binary Search tree
Tree and Binary Search tree
Muhazzab Chouhadry
 
Unit 3.ppt
Unit 3.pptUnit 3.ppt
Unit 3.ppt
JITTAYASHWANTHREDDY
 
Tree.ppt......................................
Tree.ppt......................................Tree.ppt......................................
Tree.ppt......................................
XEON14
 
Trees in Data Structure
Trees in Data StructureTrees in Data Structure
Trees in Data Structure
Prof Ansari
 
Data Structure And Algorithms for Computer Science
Data Structure And Algorithms for Computer ScienceData Structure And Algorithms for Computer Science
Data Structure And Algorithms for Computer Science
ManishShukla712917
 
Chapter 7 - Binary Search Tree in the context of DSA.pdf
Chapter 7 - Binary Search Tree in the context of DSA.pdfChapter 7 - Binary Search Tree in the context of DSA.pdf
Chapter 7 - Binary Search Tree in the context of DSA.pdf
Dibyesh1
 
Binary Trees.pptx module 122img 787554yau
Binary Trees.pptx module 122img 787554yauBinary Trees.pptx module 122img 787554yau
Binary Trees.pptx module 122img 787554yau
rithusagar5
 
Data Structures and Agorithm: DS 10 Binary Search Tree.pptx
Data Structures and Agorithm: DS 10 Binary Search Tree.pptxData Structures and Agorithm: DS 10 Binary Search Tree.pptx
Data Structures and Agorithm: DS 10 Binary Search Tree.pptx
RashidFaridChishti
 
Concise Notes on tree and graph data structure
Concise Notes on tree and graph data structureConcise Notes on tree and graph data structure
Concise Notes on tree and graph data structure
YekoyeTigabu2
 
introduction to_trees
introduction to_treesintroduction to_trees
introduction to_trees
Danish Aakash
 
Basics of Binary Tree and Binary Search Tree.pptx
Basics of Binary Tree and Binary Search Tree.pptxBasics of Binary Tree and Binary Search Tree.pptx
Basics of Binary Tree and Binary Search Tree.pptx
BhagyashriKotame2
 
Unit8 C
Unit8 CUnit8 C
Unit8 C
arnold 7490
 
Threaded binary tree
Threaded binary treeThreaded binary tree
Threaded binary tree
ArunaP47
 
VCE Unit 05.pptx
VCE Unit 05.pptxVCE Unit 05.pptx
VCE Unit 05.pptx
skilljiolms
 
Trees in data structure
Trees in data structureTrees in data structure
Trees in data structure
Anusruti Mitra
 
234slides05.pdf hello world g mail.com iwjs
234slides05.pdf hello world g mail.com iwjs234slides05.pdf hello world g mail.com iwjs
234slides05.pdf hello world g mail.com iwjs
wwwsmx06
 
Binary search Tree and avl tree , treee.ppt
Binary search Tree and avl tree , treee.pptBinary search Tree and avl tree , treee.ppt
Binary search Tree and avl tree , treee.ppt
sjain87654321
 
cs201-tree-graph_DATAStructur_Algorithm.ppt
cs201-tree-graph_DATAStructur_Algorithm.pptcs201-tree-graph_DATAStructur_Algorithm.ppt
cs201-tree-graph_DATAStructur_Algorithm.ppt
abhaysharma999437
 
Tree.ppt......................................
Tree.ppt......................................Tree.ppt......................................
Tree.ppt......................................
XEON14
 
Trees in Data Structure
Trees in Data StructureTrees in Data Structure
Trees in Data Structure
Prof Ansari
 
Data Structure And Algorithms for Computer Science
Data Structure And Algorithms for Computer ScienceData Structure And Algorithms for Computer Science
Data Structure And Algorithms for Computer Science
ManishShukla712917
 
Chapter 7 - Binary Search Tree in the context of DSA.pdf
Chapter 7 - Binary Search Tree in the context of DSA.pdfChapter 7 - Binary Search Tree in the context of DSA.pdf
Chapter 7 - Binary Search Tree in the context of DSA.pdf
Dibyesh1
 
Binary Trees.pptx module 122img 787554yau
Binary Trees.pptx module 122img 787554yauBinary Trees.pptx module 122img 787554yau
Binary Trees.pptx module 122img 787554yau
rithusagar5
 
Data Structures and Agorithm: DS 10 Binary Search Tree.pptx
Data Structures and Agorithm: DS 10 Binary Search Tree.pptxData Structures and Agorithm: DS 10 Binary Search Tree.pptx
Data Structures and Agorithm: DS 10 Binary Search Tree.pptx
RashidFaridChishti
 
Concise Notes on tree and graph data structure
Concise Notes on tree and graph data structureConcise Notes on tree and graph data structure
Concise Notes on tree and graph data structure
YekoyeTigabu2
 
introduction to_trees
introduction to_treesintroduction to_trees
introduction to_trees
Danish Aakash
 
Basics of Binary Tree and Binary Search Tree.pptx
Basics of Binary Tree and Binary Search Tree.pptxBasics of Binary Tree and Binary Search Tree.pptx
Basics of Binary Tree and Binary Search Tree.pptx
BhagyashriKotame2
 
Threaded binary tree
Threaded binary treeThreaded binary tree
Threaded binary tree
ArunaP47
 
VCE Unit 05.pptx
VCE Unit 05.pptxVCE Unit 05.pptx
VCE Unit 05.pptx
skilljiolms
 
Trees in data structure
Trees in data structureTrees in data structure
Trees in data structure
Anusruti Mitra
 
234slides05.pdf hello world g mail.com iwjs
234slides05.pdf hello world g mail.com iwjs234slides05.pdf hello world g mail.com iwjs
234slides05.pdf hello world g mail.com iwjs
wwwsmx06
 
Ad

Recently uploaded (20)

Geometry maths presentation for begginers
Geometry maths presentation for begginersGeometry maths presentation for begginers
Geometry maths presentation for begginers
zrjacob283
 
Data Science Courses in India iim skills
Data Science Courses in India iim skillsData Science Courses in India iim skills
Data Science Courses in India iim skills
dharnathakur29
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
How to join illuminati Agent in uganda call+256776963507/0741506136
How to join illuminati Agent in uganda call+256776963507/0741506136How to join illuminati Agent in uganda call+256776963507/0741506136
How to join illuminati Agent in uganda call+256776963507/0741506136
illuminati Agent uganda call+256776963507/0741506136
 
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjksPpt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
panchariyasahil
 
chapter3 Central Tendency statistics.ppt
chapter3 Central Tendency statistics.pptchapter3 Central Tendency statistics.ppt
chapter3 Central Tendency statistics.ppt
justinebandajbn
 
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
Molecular methods diagnostic and monitoring of infection  -  Repaired.pptxMolecular methods diagnostic and monitoring of infection  -  Repaired.pptx
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
7tzn7x5kky
 
Deloitte Analytics - Applying Process Mining in an audit context
Deloitte Analytics - Applying Process Mining in an audit contextDeloitte Analytics - Applying Process Mining in an audit context
Deloitte Analytics - Applying Process Mining in an audit context
Process mining Evangelist
 
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbbEDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
JessaMaeEvangelista2
 
FPET_Implementation_2_MA to 360 Engage Direct.pptx
FPET_Implementation_2_MA to 360 Engage Direct.pptxFPET_Implementation_2_MA to 360 Engage Direct.pptx
FPET_Implementation_2_MA to 360 Engage Direct.pptx
ssuser4ef83d
 
Classification_in_Machinee_Learning.pptx
Classification_in_Machinee_Learning.pptxClassification_in_Machinee_Learning.pptx
Classification_in_Machinee_Learning.pptx
wencyjorda88
 
How iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost FundsHow iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost Funds
ireneschmid345
 
LLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bertLLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bert
ChadapornK
 
computer organization and assembly language.docx
computer organization and assembly language.docxcomputer organization and assembly language.docx
computer organization and assembly language.docx
alisoftwareengineer1
 
VKS-Python-FIe Handling text CSV Binary.pptx
VKS-Python-FIe Handling text CSV Binary.pptxVKS-Python-FIe Handling text CSV Binary.pptx
VKS-Python-FIe Handling text CSV Binary.pptx
Vinod Srivastava
 
04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story
ccctableauusergroup
 
Cleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdfCleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdf
alcinialbob1234
 
Principles of information security Chapter 5.ppt
Principles of information security Chapter 5.pptPrinciples of information security Chapter 5.ppt
Principles of information security Chapter 5.ppt
EstherBaguma
 
Ch3MCT24.pptx measure of central tendency
Ch3MCT24.pptx measure of central tendencyCh3MCT24.pptx measure of central tendency
Ch3MCT24.pptx measure of central tendency
ayeleasefa2
 
Stack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptxStack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptx
binduraniha86
 
Geometry maths presentation for begginers
Geometry maths presentation for begginersGeometry maths presentation for begginers
Geometry maths presentation for begginers
zrjacob283
 
Data Science Courses in India iim skills
Data Science Courses in India iim skillsData Science Courses in India iim skills
Data Science Courses in India iim skills
dharnathakur29
 
Developing Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response ApplicationsDeveloping Security Orchestration, Automation, and Response Applications
Developing Security Orchestration, Automation, and Response Applications
VICTOR MAESTRE RAMIREZ
 
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjksPpt. Nikhil.pptxnshwuudgcudisisshvehsjks
Ppt. Nikhil.pptxnshwuudgcudisisshvehsjks
panchariyasahil
 
chapter3 Central Tendency statistics.ppt
chapter3 Central Tendency statistics.pptchapter3 Central Tendency statistics.ppt
chapter3 Central Tendency statistics.ppt
justinebandajbn
 
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
Molecular methods diagnostic and monitoring of infection  -  Repaired.pptxMolecular methods diagnostic and monitoring of infection  -  Repaired.pptx
Molecular methods diagnostic and monitoring of infection - Repaired.pptx
7tzn7x5kky
 
Deloitte Analytics - Applying Process Mining in an audit context
Deloitte Analytics - Applying Process Mining in an audit contextDeloitte Analytics - Applying Process Mining in an audit context
Deloitte Analytics - Applying Process Mining in an audit context
Process mining Evangelist
 
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbbEDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
EDU533 DEMO.pptxccccvbnjjkoo jhgggggbbbb
JessaMaeEvangelista2
 
FPET_Implementation_2_MA to 360 Engage Direct.pptx
FPET_Implementation_2_MA to 360 Engage Direct.pptxFPET_Implementation_2_MA to 360 Engage Direct.pptx
FPET_Implementation_2_MA to 360 Engage Direct.pptx
ssuser4ef83d
 
Classification_in_Machinee_Learning.pptx
Classification_in_Machinee_Learning.pptxClassification_in_Machinee_Learning.pptx
Classification_in_Machinee_Learning.pptx
wencyjorda88
 
How iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost FundsHow iCode cybertech Helped Me Recover My Lost Funds
How iCode cybertech Helped Me Recover My Lost Funds
ireneschmid345
 
LLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bertLLM finetuning for multiple choice google bert
LLM finetuning for multiple choice google bert
ChadapornK
 
computer organization and assembly language.docx
computer organization and assembly language.docxcomputer organization and assembly language.docx
computer organization and assembly language.docx
alisoftwareengineer1
 
VKS-Python-FIe Handling text CSV Binary.pptx
VKS-Python-FIe Handling text CSV Binary.pptxVKS-Python-FIe Handling text CSV Binary.pptx
VKS-Python-FIe Handling text CSV Binary.pptx
Vinod Srivastava
 
04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story04302025_CCC TUG_DataVista: The Design Story
04302025_CCC TUG_DataVista: The Design Story
ccctableauusergroup
 
Cleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdfCleaned_Lecture 6666666_Simulation_I.pdf
Cleaned_Lecture 6666666_Simulation_I.pdf
alcinialbob1234
 
Principles of information security Chapter 5.ppt
Principles of information security Chapter 5.pptPrinciples of information security Chapter 5.ppt
Principles of information security Chapter 5.ppt
EstherBaguma
 
Ch3MCT24.pptx measure of central tendency
Ch3MCT24.pptx measure of central tendencyCh3MCT24.pptx measure of central tendency
Ch3MCT24.pptx measure of central tendency
ayeleasefa2
 
Stack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptxStack_and_Queue_Presentation_Final (1).pptx
Stack_and_Queue_Presentation_Final (1).pptx
binduraniha86
 

Threaded Binary Tree

  • 1. Presented to: Md. Shamsujjoha  Senior Lecturer of CSE department  East West University Presented by:  Md. Khabbab Hossain Tusher  Date:03/04/2016
  • 3. A binary search tree in which each node uses an otherwise-empty left child link to refer to the node's in-order predecessor and an empty right child link to refer to its in-Order Successor. Definition Slide 1
  • 4. A Simple Binary Tree A B D E C GF Slide 2
  • 5. A B C Null D Null Null E Null Null G NullNull F Null Slide 3 Threaded binary tree
  • 6. Threaded Binary Tree  In above binary tree, there are 8 null pointers & actual 6 pointers.  In all there are 14 pointers.  We can generalize it that for any binary tree with n nodes there will be (n+1) null pointers and 2n total pointers.  The objective here to make effective use of these null pointers.  A. J. perils & C. Thornton jointly proposed idea to make effective use of these null pointers.  According to this idea we are going to replace all the null pointers by the appropriate pointer values called threads. Slide 4
  • 7.  And binary tree with such pointers are called threaded tree.  In the memory representation of a threaded binary tree, it is necessary to distinguish between a normal pointer and a thread. Slide 5
  • 8. Threaded Binary Tree: One-Way  We will use the right thread only in this case.  To implement threads we need to use in-order successor of the tree Slide 6
  • 9. Threaded Binary Tree: One-Way A B C Null D Null E Null G NullNull F Inorder Traversal of The tree: D, B, E, A, F, C, G Slide 7
  • 10. Two way Threaded Tree/Double Threads  Again two-way threading has left pointer of the first node and right pointer of the last node will contain the null value. The header nodes is called two-way threading with header node threaded binary tree. Slide 8
  • 11. A B D Inorder Traversal of The tree: D, B, E, A, F, C, G E C F G Dangling Dangling Slide 9
  • 12. • 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. Slide 10
  • 13. A B D Inorder Traversal of The tree: D, B, E, A, F, C, G E C F G Head Slide 11
  • 14. Structure of Thread BT Node structure For the purpose of our evaluation algorithm, we assume each node has five fields: LTag Left data Right RTag We define this node structure in C as: Struct Node{ int data; struct Node *Left,*Right; bool Ltag; boolRtag; }; Slide 12
  • 15. L.Tag L.Child head R.child R.Tag 1 A 1 1 1 0 D 0 0 E 0 0 F 0 0 G 0 1 B 1 1 C 1 Inorder Traversal of The tree: D B E A F C G Slide 13
  • 16. Threaded Tree Traversal • We start at the leftmost node in the tree, print it, and follow its right thread • If we follow a thread to the right, we output the node and continue to its right. • If we follow a link to the right, we go to the leftmost node, print it, and continue. Slide 14
  • 17. 8 75 3 1 6 Start at leftmost node, print it Output 1 9 Slide 15
  • 18. 8 75 3 1 6 Follow thread to right, print node Output 1 3 9 Slide 16
  • 19. 8 75 3 1 6 Follow link to right, go to leftmost node and print Output 1 3 5 9 Slide 17
  • 20. 8 75 3 1 6 Follow thread to right, print node Output 1 3 5 6 9 Slide 18
  • 21. 8 75 3 1 6 Follow link to right, go to leftmost node and print Output 1 3 5 6 7 9 Slide 19
  • 22. 8 75 3 1 6 9 Follow thread to right, print node Output 1 3 5 6 7 8 Slide 20
  • 23. 8 75 3 91 6 Follow link to right, go to leftmost node and print Output 1 3 5 6 7 8 9 Slide 21
  • 24. void inOrder(struct Node *root) { struct Node *cur = leftmost(root); while (cur != NULL)  {  printf("%d ", cur->data);   // If this node is a thread node, then go to // inorder successor  if (cur->rightThread)  cur = cur->right;  else // Else go to the leftmost child in right subtree  cur = leftmost(cur->right);  }  } 8 75 3 1 6 9 Slide 22
  • 25. Threaded Binary Trees  In threaded binary trees, The null pointers are used as thread.  We can use the null pointers which is a efficient way to use computers memory.  Traversal is easy. Completed without using stack or reccursive function.  Structure is complex.  Insertion and deletion takes more time. Normal Binary Trees  In a normal binary trees, the null pointers remains null.  We can’t use null pointers so it is a wastage of memory.  Traverse is not easy and not memory efficient.  Less complex than Threaded binary tree.  Less Time consuming than Threaded Binary tree. Comparison of Threaded BT Slide 23
  • 26.  Inserting a node to Threaded Binary Tree: Inserting a node X as the right child of a nodes. 1st Case: - If G has an empty right subtree, then the insertion is simple Slide 24
  • 27. A B D Inserting X as a right child of G E C F G Head X New inorder traversal is: D,B,E,A,F,C,G,X Slide 25
  • 28. 2nd Case: If the right subtree of C is not empty, then this right child is made the right child of X after insertion. Slide 26
  • 29. A B D New Inorder Traversal of The tree: D, B, E, A, F, C, X,G E F G Head x C Slide 27
  • 30. Advantage  1. By doing threading we avoid the recursive method of traversing a Tree , which doesn’t use of stack and consumes a lot of memory and time .  2 . The node can keep record of its root .  3. Backward Traverse is possible.  4. Applicable in most types of the binary tree. Disadvantage  1. This makes the Tree more complex .  2. More prone to errors when both the child are not present & both values of nodes pointer to their ancestors.  3. Lot of time consumes when deletion or insertion is performed. Threaded binary tree Slide 28
  • 31.  Same as any kind of Binary Tree.  Used in search and Traverse based work APPLICATIONS Slide 29
  • 32. Conclusion  Excellent concept in modern computer science.  Saves Time and memory.  Traversal and search are very efficient.  Insertion and deletion are not so efficient. Slide 30
  • 33. References  http://www.geeksforgeeks.org/inorder-tree-traversal-without- recursion-and-without-stack/  http://www.delorie.com/gnu/docs/avl/libavl_183.html  http://www.math- cs.gordon.edu/courses/cs321/lectures/threaded.html  https://prezi.com/1yitau0wnwlg/threaded-binary-tree-in-data- structures/  http://stackoverflow.com/questions/6744770/confusion-with- threaded-binary-tree  Various Text Book for data structure.