Java: Get the inorder traversal of its nodes' values of a given a binary tree.
Inorder Binary Tree Traversal
Write a Java program to get the in-order traversal of its nodes' values in a binary tree.
Example:{10, 20, 30, 40, 50}
Output: 40 20 50 10 30
Sample Binary Tree

Inorder Traversal:

Sample Solution:
Java Code:
class Node
{
int key;
Node left, right;
public Node(int item)
{
// Constructor to create a new Node with the given item
key = item;
left = right = null;
}
}
class BinaryTree
{
Node root;
BinaryTree()
{
// Constructor to create an empty binary tree
root = null;
}
void print_Inorder(Node node)
{
if (node == null)
return;
// Recursively print the left subtree in inorder
print_Inorder(node.left);
// Print the key of the current node
System.out.print(node.key + " ");
// Recursively print the right subtree in inorder
print_Inorder(node.right);
}
void print_Inorder()
{
// Wrapper method to start printing the tree in inorder
print_Inorder(root);
}
public static void main(String[] args)
{
BinaryTree tree = new BinaryTree();
// Create a binary tree with nodes and keys
tree.root = new Node(55);
tree.root.left = new Node(21);
tree.root.right = new Node(80);
tree.root.left.left = new Node(9);
tree.root.left.right = new Node(29);
tree.root.right.left = new Node(76);
tree.root.right.right = new Node(91);
// Display a message and initiate the inorder traversal
System.out.println("\nInorder traversal of binary tree is: ");
tree.print_Inorder();
}
}
Sample Output:
Inorder traversal of binary tree is: 9 21 29 55 76 80 91
Flowchart:

For more Practice: Solve these Related Problems:
- Modify the program to return a list of values in order.
- Write a program to perform an in-order traversal without recursion.
- Modify the program to perform an in-order Morris traversal.
- Write a program to find the kth smallest element using in-order traversal.
Java Code Editor:
Previous: Write a Java program to get the preorder traversal of its nodes' values of a given a binary tree.
Next: Write a Java program to get the Postorder traversal of its nodes' values of a given a binary tree.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics