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

Data type, Q. Define the terms data type and abstract data type. Comment up...

Q. Define the terms data type and abstract data type. Comment upon the significance of both these.   Ans: We determine the total amount of memory to reserve by determining

B-tree, Draw a B-tree of order 3 for the following sequence of keys: 2,4,9,...

Draw a B-tree of order 3 for the following sequence of keys: 2,4,9,8,7,6,3,1,5,10.and delete 8 and 10

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

Binary tree creation, Binary tree creation struct NODE { struct N...

Binary tree creation struct NODE { struct NODE *left; int value; struct NODE *right; }; create_tree( struct NODE *curr, struct NODE *new ) { if(new->val

Graph traversal schemes, Q. Explain various graph traversal schemes and wri...

Q. Explain various graph traversal schemes and write their advantages and disadvantages. A n s . Graph Traversal Scheme is explained below In many troubles we wish

Queue be represented by circular linked list, Q. Can a Queue be represented...

Q. Can a Queue be represented by circular linked list with only one pointer pointing to the tail of the queue? Substantiate your answer using an example. A n s . Yes a

High-level and bubble algorithm , 1. Give both a high-level algorithm and a...

1. Give both a high-level algorithm and an implementation (\bubble diagram") of a Turing machine for the language in Exercise 3.8 (b) on page 160. Use the ' notation to show the co

Graphs, In this unit, we will describe a data structure called Graph. Actua...

In this unit, we will describe a data structure called Graph. Actually, graph is a general tree along no parent-child relationship. In computer science, Graphs have several applica

Demonstrate that dijkstra''s algorithm, Demonstrate that Dijkstra's algorit...

Demonstrate that Dijkstra's algorithm does not necessarily work if some of the costs are negative by finding a digraph with negative costs (but no negative cost dicircuits) for whi

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