This is a Java Program to perform insertion in the binary search tree.
Here is the source code of the Java Program to Perform Insertion in a BST. 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 insert elements in a Binary Search Tree
import java.util.Scanner;
class BSTNode
{
BSTNode left, right;
int data;
public BSTNode()
{
left = null;
right = null;
data = 0;
}
public BSTNode(int n)
{
left = null;
right = null;
data = n;
}
public void setLeft(BSTNode n)
{
left = n;
}
public void setRight(BSTNode n)
{
right = n;
}
public BSTNode getLeft()
{
return left;
}
public BSTNode getRight()
{
return right;
}
public void setData(int d)
{
data = d;
}
public int getData()
{
return data;
}
}
class BSTree
{
private BSTNode root;
public BSTree()
{
root = null;
}
public boolean isEmpty()
{
return root == null;
}
public void insert(int data)
{
root = insert(root, data);
}
private BSTNode insert(BSTNode node, int data)
{
if (node == null)
node = new BSTNode(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(BSTNode r)
{
if (r != null)
{
inorder(r.getLeft());
System.out.print(r.getData() + " ");
inorder(r.getRight());
}
}
public void preorder()
{
preorder(root);
}
private void preorder(BSTNode r)
{
if (r != null)
{
System.out.print(r.getData() + " ");
preorder(r.getLeft());
preorder(r.getRight());
}
}
public void postorder()
{
postorder(root);
}
private void postorder(BSTNode r)
{
if (r != null)
{
postorder(r.getLeft());
postorder(r.getRight());
System.out.print(r.getData() + " ");
}
}
}
public class Insertion_BST
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
BSTree bst = new BSTree();
System.out.println("Binary Search Tree Insertion Test\n");
int N = 10;
for (int i = 0; i < N; i++)
{
bst.insert(scan.nextInt());
System.out.print("\nPost order : ");
bst.postorder();
System.out.print("\nPre order : ");
bst.preorder();
System.out.print("\nIn order : ");
bst.inorder();
}
scan.close();
}
}
Output:
$ java Insertion_BST.java $ java Insertion_BST Binary Search Tree Insertion Test Add element: 3 Post order : 3 Pre order : 3 In order : 3 Add element: 5 Post order : 5 3 Pre order : 3 5 In order : 3 5 Add element: 4 Post order : 4 5 3 Pre order : 3 5 4 In order : 3 4 5 Add element: 4 Post order : 4 4 5 3 Pre order : 3 5 4 4 In order : 3 4 4 5 Add element: 6 Post order : 4 4 6 5 3 Pre order : 3 5 4 4 6 In order : 3 4 4 5 6 Add element: 45 Post order : 4 4 45 6 5 3 Pre order : 3 5 4 4 6 45 In order : 3 4 4 5 6 45 Add element: 7578 Post order : 4 4 7578 45 6 5 3 Pre order : 3 5 4 4 6 45 7578 In order : 3 4 4 5 6 45 7578 Add element: 54651 Post order : 4 4 54651 7578 45 6 5 3 Pre order : 3 5 4 4 6 45 7578 54651 In order : 3 4 4 5 6 45 7578 54651 Add element: 22 Post order : 4 4 22 54651 7578 45 6 5 3 Pre order : 3 5 4 4 6 45 22 7578 54651 In order : 3 4 4 5 6 22 45 7578 54651 Add element: 34 Post order : 4 4 34 22 54651 7578 45 6 5 3 Pre order : 3 5 4 4 6 45 22 34 7578 54651 In order : 3 4 4 5 6 22 34 45 7578 54651
Related posts:
Concatenating Strings In Java
New Stream Collectors in Java 9
Get and Post Lists of Objects with RestTemplate
Period and Duration in Java
Các chương trình minh họa sử dụng Cấu trúc điều khiển trong Java
Java Program to Generate Random Numbers Using Middle Square Method
The HttpMediaTypeNotAcceptableException in Spring MVC
Spring Data JPA @Query
Java Program to Implement Circular Singly Linked List
Introduction to the Functional Web Framework in Spring 5
Spring MVC Async vs Spring WebFlux
Java Program to Implement Fibonacci Heap
Java Scanner hasNext() vs. hasNextLine()
Java Program to Implement Floyd-Warshall Algorithm
Java Program to Permute All Letters of an Input String
Một số ký tự đặc biệt trong Java
Transactions with Spring and JPA
Introduction to Apache Commons Text
Derived Query Methods in Spring Data JPA Repositories
Simplify the DAO with Spring and Java Generics
Number Formatting in Java
Java Program to Implement LinkedHashMap API
Lớp HashMap trong Java
Quick Guide to Spring Bean Scopes
Getting Started with Forms in Spring MVC
Guide to CountDownLatch in Java
A Guide to ConcurrentMap
Cài đặt và sử dụng Swagger UI
Convert String to int or Integer in Java
A Guide to Iterator in Java
Java Program to Solve TSP Using Minimum Spanning Trees
Java Program to Implement Park-Miller Random Number Generation Algorithm