Skip to content

Commit

Permalink
Tree.java
Browse files Browse the repository at this point in the history
Code to traverse the tree into postorder, preorder & inorder traversing.
  • Loading branch information
rokingshubham1 authored Oct 27, 2022
1 parent fd075fd commit 1e72b61
Showing 1 changed file with 68 additions and 0 deletions.
68 changes: 68 additions & 0 deletions java/Tree/tree.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
import java.util.Scanner;

public class Tree {

static Scanner sc = null;
public static void main(String[] args) {
sc = new Scanner(System.in);

Node root = createTree();
inOrder(root);
System.out.println();
preOrder(root);
System.out.println();
postOrder(root);
System.out.println();
}

static Node createTree() {

Node root = null;
System.out.println("Enter data: ");
int data = sc.nextInt();

if(data == -1) return null;

root = new Node(data);

System.out.println("Enter left for " + data);
root.left = createTree();

System.out.println("Enter right for "+ data);
root.right = createTree();

return root;
}

static void inOrder(Node root) {
if(root == null) return;

inOrder(root.left);
System.out.print(root.data+" ");
inOrder(root.right);
}

static void preOrder(Node root) {
if(root == null) return;
System.out.print(root.data+" ");
preOrder(root.left);
preOrder(root.right);
}

static void postOrder(Node root) {
if(root == null) return;

postOrder(root.left);
postOrder(root.right);
System.out.print(root.data+" ");
}
}

class Node {
Node left, right;
int data;

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

0 comments on commit 1e72b61

Please sign in to comment.