Line 1: Line 1:
<br>
+
[[Category:ECE264]] [[Category:Programming]] [[Category:C]]
  
= Binary Tree: In Order and Post Order  =
+
= [[ECE264]]: Binary Tree: In Order and Post Order  =
  
 
==== '''In Order Printing'''  ====
 
==== '''In Order Printing'''  ====
Line 75: Line 75:
 
}TNode;  
 
}TNode;  
  
<br> [[ECE264|Back to ECE264]]
+
----
 
+
[[2011_Spring_ECE_264_Lu|Back to ECE264, Spring 2011, Prof. Lu]]
[[Category:ECE264]]
+

Latest revision as of 06:46, 11 July 2012


ECE264: Binary Tree: In Order and Post Order

In Order Printing

In order printing takes the root of a binary tree and prints all the values in the tree in order.  The function is a recursive function that goes as far left in the binary tree until it hits the end.  It will then print the leaf's value.  After the leaf's value is printed, the function moves to the right once and precedes to go left until a leaf is found.  Printing the leaf's value and continues on.


Example code for in order printing:

void Tree_inOrder(TNode *n) /*see declaration of TNode below*/

{

     if(n==0)

           return;

     Tree_inOrder(n->left);

     printf("%d\n", n->value);

     Tree_inOrder(n->right);


Post Order Printing

Post order printing is similar to in order printing in the sense that all values of the tree are printed but is different in the order of which the values are printed.

Post prder printing will take any node in the tree and print all the values to the left and right before the original node is printed.  Example: If the root of the binary tree is 19 and post order printing is called with the root, then the very last line of output will be 19.


Example code for in order printing:

void Tree_postOrder(TNode *n) /*see declaration of TNode below*/

{

     if(n==0)

          return;

     Tree_postOrder(n->left);

     Tree_postOrder(n->right);

     printf("%d\n", n->value);

}




The declaration of TNode is as followed:

typedef struct Treenode

{

     int value;

     struct Treenode *left;

     struct Treenode *right;

}TNode;


Back to ECE264, Spring 2011, Prof. Lu

Alumni Liaison

Ph.D. on Applied Mathematics in Aug 2007. Involved on applications of image super-resolution to electron microscopy

Francisco Blanco-Silva