This is a java program to construct a binary tree and perform inorder traversal of the constructed binary tree.
Nodes visited are in the order:
visit Left node
visit Root node
visit Right node
Here is the source code of the Java Program to Perform Inorder 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 inorder 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 inorder()
{
inorder(root);
}
private void inorder(BinarySearchTreeNodes r)
{
if (r != null)
{
inorder(r.getLeft());
System.out.print(r.getData() + " ");
inorder(r.getRight());
}
}
}
public class Inorder_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("\nIn order : ");
bst.inorder();
scan.close();
}
}
Output:
$ javac Inorder_Recursive_BST.java $ java Inorder_Recursive_BST Enter the first 10 elements of the tree 12 10 11 03 15 19 02 01 04 70 In order : 1 2 3 4 10 11 12 15 19 70
Related posts:
OAuth 2.0 Resource Server With Spring Security 5
Java – Combine Multiple Collections
Why String is Immutable in Java?
Spring Webflux with Kotlin
String Initialization in Java
Introduction to Spring Cloud Netflix – Eureka
Java Program to Check whether Graph is a Bipartite using BFS
Guide to Dynamic Tests in Junit 5
Auditing with JPA, Hibernate, and Spring Data JPA
Java Program to Implement Bubble Sort
A Guide to Java SynchronousQueue
Function trong Java 8
Java Streams vs Vavr Streams
Java Program to Implement Karatsuba Multiplication Algorithm
Java Program to Implement Dijkstra’s Algorithm using Priority Queue
Java Program to Find the Number of Ways to Write a Number as the Sum of Numbers Smaller than Itself
HashSet trong java
Spring Boot - Flyway Database
Java Program to Find k Numbers Closest to Median of S, Where S is a Set of n Numbers
Java Program to Implement Interpolation Search Algorithm
A Guide To UDP In Java
Java Program to Implement DelayQueue API
Java Program to Solve Set Cover Problem assuming at max 2 Elements in a Subset
Java Program to Implement Stein GCD Algorithm
Java Program to Use rand and srand Functions
Spring RequestMapping
Java Program for Topological Sorting in Graphs
Custom Thread Pools In Java 8 Parallel Streams
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Java Program to Implement Shunting Yard Algorithm
Java Program to Delete a Particular Node in a Tree Without Using Recursion
Java Program to Implement Counting Sort