Table of Contents [hide]
If you want to practice data structure and algorithm programs, you can go through 100+ java coding interview questions.
1. Overview
In this article, we will explore how to find the maximum element in a binary tree in Java using recursive and iterative solutions.
2. Introduction to Problem Statement
Given a binary tree as below:
Maximum element in binary tree is: 70
Our goal is to find an efficient method to traverse the tree and find this maximum value.
3. Implementation
There can be two solutions for it:
- Recursive
- Iterative
3.1 Recursive
- Find maximum element in left subtree.
- Find maximum element in right subtree.
- Compare maximum of above subtrees to current node.
- We will find maximum element with the above steps.
Code for recursion will be:
Time Complexity: O(n), where n is the number of nodes, as it visits each node exactly once.
Space Complexity: O(h), where h is the height of the tree, due to the recursion stack.
3.2 Iterative
Code for iteration will be :
Time Complexity: O(n), similar to the recursive solution.
Space Complexity: O(h), but since it’s iterative, it avoids the potential stack overflow issue.
4. Complete Java Program
Let’s say our binary tree is:

5. Conclusion
In this article, we covered about how to find maximum element in binary tree. We have done traversal using two approaches: Iterative and Recursive. We also discussed about time and space complexity for the solutions.
Java Binary tree tutorial:
- Binary tree in java
- Binary tree preorder traversal
- Binary tree postorder traversal
- Binary tree inorder traversal
- Binary tree level order traversal
- Binary tree spiral order traversal
- Binary tree reverse level order traversal
- Binary tree boundary traversal
- Print leaf nodes of binary tree
- Count leaf nodes in binary tree
- get maximum element in binary tree
- Print all paths from root to leaf in binary tree
- Print vertical sum of binary tree in java
- Get level of node in binary tree in java
- Lowest common ancestor(LCA) in binary tree in java
Please go through java interview programs for more such programs.