Tree traversal java code


Tree Traversals
         There are three types of traversals For more info click here


1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
package BinaryTree;

 //Tree Traversal Java Code
 //Inorder
 //Preorder
 //levelorder
class Node {

 int data;
 Node left, right;

 public Node(int data) {
  this.data = data;
  left = right = null;
 }
}

class BinaryTree {
 Node root;

 BinaryTree() {
  root = null;
 }

 void printPostorder(Node node) {
  if (node == null)
   return;
  // 1strecur on left subtree
  printPostorder(node.left);

  // then recur right
  printPostorder(node.right);

  // now the node
  System.out.print(node.data + " ");

 }

 /* Given a binary tree, print its nodes in inorder */
 void printInorder(Node node) {
  if (node == null)
   return;
  /* first recur on left child */
  printInorder(node.left);
  /* then print the data of node */
  System.out.print(node.data + " ");

  /* now recur on right child */
  printInorder(node.right);

 }

 void printPreorder(Node node) {
  if (node == null)
   return;

  /* first print data of node */
  System.out.print(node.data + " ");

  /* then recur on left sutree */
  printPreorder(node.left);

  /* now recur on right subtree */
  printPreorder(node.right);

 }

 // Wrappers over above recursive functions
 void printPostorder() {printPostorder(root);}

 void printInorder() {printInorder(root);}

 void printPreorder() {
  printPreorder(root);
 }

 // main method
 public static void main(String[] args) {
  BinaryTree tree = new BinaryTree();
  tree.root = new Node(1);
  tree.root.left = new Node(2);
  tree.root.right = new Node(3);
  tree.root.left.left = new Node(4);
  tree.root.left.right = new Node(5);
  System.out.println("Preorder traversal tree is: ");
  tree.printPreorder();

  System.out.println("\nInorder traversal tree is: ");
  tree.printInorder();

  System.out.println("\nPostorder traversal of tree is: ");
  tree.printPostorder();
 }

}

No comments:

Post a Comment