Check for balanced parentheses in an expression in java

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

In this post, we will see how to check for balanced parentheses in an expression.
Lets say, you have expression as a*(b+c)-(d*e)
If you notice, above expression have balanced parentheses.
Lets take another expression as (a*(b-c)*(d+e)
If you observe, above expression does not have balanced parentheses.
We will use stack data structure to check for balanced parentheses.
Algorithm:

  • Whenever you encounter current character as ( or { or [, push it into the stack.
  • Whenever you encounter current character as ) or } or ], retrieve last element from stack and check if current character is in pair with last character retrieved from stack and if it is not in pair then expression is not balanced.
  • If we have empty stack in the end, it is balanced parentheses, else it is not balanced parentheses.

Java Program to check for balanced parentheses:

Create a main Class called CheckBalancedParentesisMain.java.
When you run above program, you will get below output:


import_contacts

You may also like:

Related Posts

  • 23 September

    Sort a Stack using another stack

    If you want to practice data structure and algorithm programs, you can go through 100+ data structure and algorithm programs. In this post,  we will see how to sort a stack using another stack. Problem Given a Stack,  you need to sort it with the help of temporary stack. Solution : Let’s say,  you have […]

  • 16 September

    Stack implementation in java

    If you want to practice data structure and algorithm programs, you can go through 100+ data structure and algorithm interview questions. In this post, we will see how to implement Stack using Array in java. Introduction Stack is abstract data type which demonstrates Last in first out (LIFO) behavior. We will implement same behavior using Array. […]

  • 10 September

    Implement Stack using two Queues in java

    If you want to practice data structure and algorithm programs, you can go through data structure and algorithm interview questions. In this program, we will see how to implement stack using Linked List in java. Stack is abstract data type which demonstrates Last in first out (LIFO) behavior. We will implement same behavior using two queue. […]

  • 10 September

    Implement stack using Linked List in java

    If you want to practice data structure and algorithm programs, you can go through 100+ data structure and algorithm interview questions. In this program, we will see how to implement stack using Linked List in java. The Stack is an abstract data type that demonstrates Last in first out (LIFO) behavior. We will implement the same […]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.