# Lowest Common Ancestor (LCA) of binary search tree in java

If you want to practice data structure and algorithm programs, you can go through 100+ java coding interview questions.

In this post, we will see how to find lowest common ancestor(LCA) of two nodes in binary search tree.
We have already seen how to find LCA in binary tree. It is much simple than that.
Lets understand with example.

As you can see here, LCA is nothing but lowest common parent of two nodes.

### Recursive Algorithm (For nodes A and B):

• If node is null, return it
• If node is greater than A and B, traverse left subtree
• If node is lesser than A and B , traverse right subtree.
• If above both condition do not satisfy, then node is LCA of A and B

### Iterative solution:

It is similar to recursive solution, here we are using while loop to traverse nodes.

#### Complete java program:

When you run above program, you will get below output:
Please go through java interview programs for more such programs.

import_contacts

## Related Posts

• 20 May

### Rotate Matrix by 90 degrees in java

Table of ContentsClockwise or Right Rotate a MatrixAnti-Clockwise or Left Rotate a MatrixHow to Rotate Matrix K Times? In this article, we will look into another interesting problem related to 2D Arrays. Given a Matrix of N X N Dimension we have to Rotate matrix by 90 degrees. We will perform Rotation both Clockwise i.e. […]

• 16 April

• 29 November

### Top 100+ Java coding interview questions

Table of ContentsStringQuestion 1 : How to reverse a String in java? Can you write a program without using any java inbuilt methods?Question 2 : Write a java program to check if two Strings are anagram in java?Question 3 : Write a program to check if String has all unique characters in java?Question 4 : […]

• 18 April

### Minimum Number of Jumps to reach last Index

Table of ContentsProblemSolution If you want to practice data structure and algorithm programs, you can go through Java coding interview questions. In this post, we will see how to find Minimum Number of Jumps to reach last Index. Problem Given an array A of positive integers possibly zeroes, every index indicating the maximum length of a […]

• 20 February

### Inorder Successor in a Binary Search Tree

Table of ContentsProblemSolutionAPPROACH – I :Approach – II:(i) If the target node has a right child :(ii) If the target node does not have a right child :Time Complexity Discussion If you want to practice data structure and algorithm programs, you can go through Java coding interview questions. In this post, we will see how to […]

• 04 February

### LCA of a K-ary Tree in O(Sqrt(height))

Table of ContentsProblemSolution If you want to practice data structure and algorithm programs, you can go through Java coding interview questions. In this post, we will see about how to find Lowest Common Ancestor of a K-ary Tree in O(Sqrt(height)).We have already seen how to find LCA of n-ary tree in O(n) complexity. Problem Given a […]

## Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.