This is a java program to construct a binary tree and perform preorder traversal of the constructed binary tree.
Nodes visited are in the order:
visit Root node
visit Left node
visit Right node
Here is the source code of the Java Program to Perform Preorder 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 preorder 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 preorder()
{
preorder(root);
}
private void preorder(BinarySearchTreeNodes r)
{
if (r != null)
{
System.out.print(r.getData() + " ");
preorder(r.getLeft());
preorder(r.getRight());
}
}
}
public class Preorder_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("\nPre order : ");
bst.preorder();
scan.close();
}
}
Output:
$ javac Preorder_Recursive_BST.java $ java Preorder_Recursive_BST Enter the first 10 elements of the tree 12 10 11 03 15 19 02 01 04 70 Pre order : 12 10 3 2 1 4 11 15 19 70
Related posts:
Làm thế nào tạo instance của một class mà không gọi từ khóa new?
Java InputStream to String
Một số ký tự đặc biệt trong Java
Tìm hiểu về xác thực và phân quyền trong ứng dụng
Spring Data MongoDB Transactions
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Converting Java Date to OffsetDateTime
Spring Cloud – Bootstrapping
Java Program to Represent Graph Using Linked List
Java Program to Implement RoleUnresolvedList API
Hướng dẫn Java Design Pattern – Iterator
Java Program to Implement Counting Sort
So sánh HashMap và HashSet trong Java
Spring Boot - Google Cloud Platform
Hướng dẫn Java Design Pattern – Composite
A Guide to JPA with Spring
Java Program to Implement Sorted Doubly Linked List
Primitive Type Streams in Java 8
Practical Java Examples of the Big O Notation
Đồng bộ hóa các luồng trong Java
Java – Combine Multiple Collections
Introduction to Java 8 Streams
Spring WebClient Filters
Java Program to Implement Heap
Feign – Tạo ứng dụng Java RESTful Client
Java Program to implement Array Deque
Java Program to Implement Ternary Search Algorithm
A Guide to HashSet in Java
A Guide to @RepeatedTest in Junit 5
Java Program to Encode a Message Using Playfair Cipher
Java Program to Implement Floyd-Warshall Algorithm
Java Program to Implement Leftist Heap