Balance Braces and duplicate braces and postfix

package stack;

import java.util.Stack;

public class TestBraces {
public static Boolean isBalanced(String exp) {
Stack s=new Stack<>();

for(int i =0;i if(exp.charAt(i)=='(') {
s.push(exp.charAt(i));
}
if(exp.charAt(i)==')') {

if(s.isEmpty()) {
return false;
}
Character top =s.pop();
if(top =='(' && exp.charAt(i)!=')') {
return false;
}
}
}
return s.empty();
}
public static Boolean checkDuplicateBalanced(String exp) {
Stack s=new Stack<>();

for(int i =0;i<
exp.length();i++){
if(exp.charAt(i)!=')') {
s.push(exp.charAt(i));
System.out.println(s);
}
else {
if(s.peek()=='(') {
return true;
}
while(s.peek()!='(') {

s.pop();
}
s.pop();
}

}
}
return false;
}

public static void evaltePostfixExp(String s) { Stack st = new Stack<>(); for(int i=0;i<s.length();i++) { if(s.charAt(i)>='0' && s.charAt(i)<='9') { st.push(s.charAt(i) - '0'); } else { int x = st.peek(); st.pop(); int y = st.peek(); st.pop(); if(s.charAt(i) == '+') { st.push(x+y); } if(s.charAt(i) == '-') { st.push(x-y); } if(s.charAt(i) == '*') { st.push(x*y); } if(s.charAt(i) == '/') { st.push(x/y); } } System.out.println(st.peek()); } }
public static void main(String[] args) { // TODO Auto-generated method stub String s = "138*+"; evaltePostfixExp(s);
String s = "((x+y))";
if(checkDuplicateBalanced(s)) {
System.out.println("true");

}

Comments