Binary tree traversals, Data Structure & Algorithms

Assignment Help:

 We have discussed already about three tree traversal methods in the earlier section on general tree. The similar three different ways to do the traversal -inorder , preorder, and postorder are applicable to binary tree also.

Let us discuss the inorder binary tree traversal for given binary tree:

We begin from the root i.e. * we are assumed to visit its left sub-tree then visit the node itself & its right sub-tree. Here, root contain a left sub-tree rooted at +. Thus, we move to + and verify for its left sub-tree (we are supposed repeat this for each node). Again, + contain a left sub-tree rooted at 4. Thus, we need to check for 4's left sub-tree now, however 4 doesn't have any left sub-tree and therefore we will visit node 4 first (print in our case) and verify for its right sub-tree. As 4 doesn't contain any right sub-tree, we'll go back & visit node +; and verify for the right sub-tree of +. It contains a right sub-tree rooted at 5 and thus we move to 5. Well, 5 don't have any left or right sub-tree. Thus, we just visit 5 (print 5) and track back to +. As we already have visited + thus we track back to * . As we are yet to visit the node itself and thus we visit * before checking for the right sub-tree of *, which is 3. As 3 do not have any left or right sub-trees, we visit 3 . Thus, the inorder traversal results in 4 + 5 * 3


Related Discussions:- Binary tree traversals

Importance of object-oriented over java, Importance of Object-Oriented over...

Importance of Object-Oriented over java Java is basically based on OOP notions of classes and objects. Java uses a formal OOP type system that should be obeyed at compile-t

What is a linear array, What is a linear array? An array is a way to re...

What is a linear array? An array is a way to reference a series of memory locations using the similar name. Every memory location is shown by an array element. An  array elemen

Red-black tree after insertion, The above 3 cases are also considered conve...

The above 3 cases are also considered conversely while the parent of Z is to the right of its own parent. All the different kind of cases can be illustrated through an instance. Le

State the range of operation of abstract data type, State the range of oper...

State the range of operation of ADT Operations of the Range of T ADT includes following, where a, b ∈ T and r and s are values of Range of T: a...b-returns a range value (an

An undirected graph g with n vertices and e edges, An undirected graph G wi...

An undirected graph G with n vertices and e edges is shown by adjacency list.  What is the time required to generate all the connected components? O (e+n)

Splaying algorithm, Insertion & deletion of target key requires splaying of...

Insertion & deletion of target key requires splaying of the tree. In case of insertion, the tree is splayed to find the target. If, target key is found out, then we have a duplicat

Graph connectivity, A connected graph is a graph wherein path exists among ...

A connected graph is a graph wherein path exists among every pair of vertices. A strongly connected graph is a directed graph wherein every pair of distinct vertices is connecte

Methods, what is folding method?

what is folding method?

Pseudocodes, how to write a pseudo code using Kramer''s rule

how to write a pseudo code using Kramer''s rule

Define dynamic programming, Define Dynamic Programming  Dynamic  progra...

Define Dynamic Programming  Dynamic  programming  is  a  method  for  solving  problems  with  overlapping  problems.  Typically, these sub problems arise from a recurrence rel

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd