Get expert advice and community support on IDNLearn.com. Whether it's a simple query or a complex problem, our experts have the answers you need.
Sagot :
Answer:
Explanation:
The following code is written in Java. It uses for loops to loop through the array of characters, and uses IF statements to check if the symbols in the expression are balanced. If so it returns true, otherwise it breaks the function and returns false. Two test cases have been provided in the main method and the output can be seen in the attached image below.
import java.util.ArrayList;
class Brainly {
public static void main(String[] args) {
char[] exp = { '[', 'A', '*', '{', 'B', '(', 'C', 'D', ')', '}', ']'};
char[] exp2 = {'[', 'A', '*', '(', 'C', '}', ']'};
System.out.println(checkBalance(exp));
System.out.println(checkBalance(exp2));
}
public static boolean checkBalance(char exp[]) {
ArrayList<Character> symbols = new ArrayList<>();
for (char x: exp) {
if ((x =='[') || (x == '{') || (x == '(')) {
symbols.add(x);
}
if (x ==']') {
if (symbols.get(symbols.size()-1) == '[') {
symbols.remove(symbols.size()-1);
} else {
return false;
}
}
if (x =='}') {
if (symbols.get(symbols.size()-1) == '{') {
symbols.remove(symbols.size()-1);
} else {
return false;
}
}
if (x ==')') {
if (symbols.get(symbols.size()-1) == '(') {
symbols.remove(symbols.size()-1);
} else {
return false;
}
}
}
return true;
}
}
Your participation means a lot to us. Keep sharing information and solutions. This community grows thanks to the amazing contributions from members like you. Your questions deserve reliable answers. Thanks for visiting IDNLearn.com, and see you again soon for more helpful information.