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:
Hướng dẫn Java Design Pattern – Bridge
Java Program to Find the Longest Path in a DAG
A Guide to Queries in Spring Data MongoDB
A Guide to Concurrent Queues in Java
Spring WebFlux Filters
Spring WebClient and OAuth2 Support
Control Structures in Java
Lập trình hướng đối tượng (OOPs) trong java
Functional Interface trong Java 8
Jackson vs Gson
Predicate trong Java 8
Spring Boot - Apache Kafka
Using the Not Operator in If Conditions in Java
Semaphore trong Java
Immutable ArrayList in Java
ExecutorService – Waiting for Threads to Finish
Model, ModelMap, and ModelAndView in Spring MVC
ClassNotFoundException vs NoClassDefFoundError
Checked and Unchecked Exceptions in Java
Introduction to Spring Data JPA
Spring MVC Setup with Kotlin
Exploring the Spring Boot TestRestTemplate
Hướng dẫn Java Design Pattern – Proxy
MyBatis with Spring
Java Program to Implement Stein GCD Algorithm
Sorting in Java
An Intro to Spring Cloud Task
Java Map With Case-Insensitive Keys
Spring REST API + OAuth2 + Angular (using the Spring Security OAuth legacy stack)
Hướng dẫn Java Design Pattern – Intercepting Filter
How to Change the Default Port in Spring Boot
Multipart Upload with HttpClient 4