This is a java program to construct a binary tree and perform postorder traversal of the constructed binary tree.
Nodes visited are in the order:
visit Left node
visit Right node
visit Root node
Here is the source code of the Java Program to Perform Postorder Recursive Traversal of a Given Binary Tree. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to implement recursive postorder traversal of the Binary Search Tree import java.util.Scanner; class BinarySearchTreeNodes { BinarySearchTreeNodes left, right; int data; public BinarySearchTreeNodes() { left = null; right = null; data = 0; } public BinarySearchTreeNodes(int n) { left = null; right = null; data = n; } public void setLeft(BinarySearchTreeNodes n) { left = n; } public void setRight(BinarySearchTreeNodes n) { right = n; } public BinarySearchTreeNodes getLeft() { return left; } public BinarySearchTreeNodes getRight() { return right; } public void setData(int d) { data = d; } public int getData() { return data; } } class BinarySearchTree { private BinarySearchTreeNodes root; public BinarySearchTree() { root = null; } public boolean isEmpty() { return root == null; } public void insert(int data) { root = insert(root, data); } private BinarySearchTreeNodes insert(BinarySearchTreeNodes node, int data) { if (node == null) node = new BinarySearchTreeNodes(data); else { if (data <= node.getData()) node.left = insert(node.left, data); else node.right = insert(node.right, data); } return node; } public void postorder() { postorder(root); } private void postorder(BinarySearchTreeNodes r) { if (r != null) { postorder(r.getLeft()); postorder(r.getRight()); System.out.print(r.getData() + " "); } } } public class Postorder_Recursive_BST { public static void main(String[] args) { Scanner scan = new Scanner(System.in); BinarySearchTree bst = new BinarySearchTree(); System.out.println("Enter the first 10 elements of the tree\n"); int N = 10; for (int i = 0; i < N; i++) bst.insert(scan.nextInt()); System.out.print("\nPost order : "); bst.postorder(); scan.close(); } }
Output:
$ javac Postorder_Recursive_BST.java $ java Postorder_Recursive_BST Enter the first 10 elements of the tree 12 10 11 03 15 19 02 01 04 70 Post order : 1 2 4 3 11 10 70 19 15 12
Related posts:
Java Program to Implement Adjacency List
JPA/Hibernate Persistence Context
Introduction to Spring MVC HandlerInterceptor
Java Program to Implement Karatsuba Multiplication Algorithm
Java Program to Implement ConcurrentLinkedQueue API
Java Program to Implement Euler Circuit Problem
Ways to Iterate Over a List in Java
Registration – Activate a New Account by Email
Java Program to Generate Random Numbers Using Multiply with Carry Method
An Introduction to Java.util.Hashtable Class
Lớp HashMap trong Java
Hướng dẫn sử dụng Java Annotation
Function trong Java 8
Spring Cloud Series – The Gateway Pattern
Hướng dẫn sử dụng Java String, StringBuffer và StringBuilder
Java Program to Check the Connectivity of Graph Using BFS
OAuth2 Remember Me with Refresh Token
Java Program to Find Transpose of a Graph Matrix
A Guide to TreeMap in Java
Jackson JSON Views
Java Program to Implement Interpolation Search Algorithm
Java Program to implement Priority Queue
Create a Custom Exception in Java
Lấy ngày giờ hiện tại trong Java
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Search for an Element in a Binary Search Tree
An Intro to Spring Cloud Vault
A Quick Guide to Spring MVC Matrix Variables
Automatic Property Expansion with Spring Boot
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Java Program to Represent Linear Equations in Matrix Form
Java Program to Generate All Possible Subsets with Exactly k Elements in Each Subset