Question: In Java: You will write a method that checks a given expression (a String) with characters and brackets ((), [], {}, ), determine if it

In Java:

You will write a method that checks a given expression (a String) with characters and brackets ((), [], {}, <>), determine if it is well-formed by using the following algorithm in conjunction with a stack.

Check the expression character by character. If the character is an opening bracket (characters (, [, {, ), then:

Check if the stack is empty. If it is, then there is no matching opening bracket. The expression is not well formed.

If the stack is not empty, pop the top character off the stack, compare the current closing bracket to the top character. If they are matched brackets, continue to read next character in the expression; if they are not matched brackets, the expression is not well formed.

If the end of the expression is reached, check if the stack is empty. If it is, the expression is well-formed. Otherwise, it is not well-formed.

Your code should print meaningful error message when the expression is not well-formed. For example, missing open bracket if current character is a close bracket but stack is empty, missing close bracket if the end of string is reached but stack is not empty, or mismatch brackets.

Code:

import java.util.*;

public class BalanceCheck {

public static boolean balanceCheck(String s){ boolean result = true; Scanner sc = new Scanner(System.in); String brackets = sc.nextLine(); Stack stack = new Stack (); boolean missOpen = false; boolean missClose = false; boolean missMatch = false; char ch1 = ' '; char ch2 = ' '; for (int i=0; i

public static void main (String args[]){ String test = "[(test>)]"; boolean correct = balanceCheck(test); System.out.println("Is the stack empty?"); System.out.println(stack.isEmpty() + " , the string is not well formed."); if (correct) System.out.println("The string is well formed"); else System.out.println("The string is not well formed"); }

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!