m2skills

balanced brackets java

Apr 18th, 2017
281
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.21 KB | None | 0 0
  1. // Program to check balanced brackets using stack
  2.  
  3. import java.util.Scanner;
  4. import java.util.Stack;
  5.  
  6. /**
  7.  * Created by MOHIT on 06-10-2016.
  8.  */
  9. public class BalancedBRackets {
  10.     public static void main(String a[]){
  11.         Scanner sc = new Scanner(System.in);
  12.         int test = sc.nextInt();
  13.         for(int i=0; i<test; i++){
  14.             Stack s1 = new Stack();
  15.             boolean flag = false;
  16.             String str = sc.next();
  17.             for (int j=0; j<str.length();j++){
  18.                 char s = str.charAt(j);
  19.                 if(s == '(' || s == '[' || s == '{'){
  20.                     s1.push(s);
  21.                 }
  22.                 else if(s == ')'){
  23.                     if (s1.size() > 0){
  24.                         char temp = (char) s1.pop();
  25.                         if(temp != '('){
  26.                             flag = true;
  27.                             break;
  28.                         }
  29.                     }
  30.                     else{
  31.                         flag = true;
  32.                         break;
  33.                     }
  34.                 }
  35.                 else if(s == ']'){
  36.                     if (s1.size() > 0){
  37.                         char temp = (char) s1.pop();
  38.                         if(temp != '['){
  39.                             flag = true;
  40.                             break;
  41.                         }
  42.                     }
  43.                     else{
  44.                         flag = true;
  45.                         break;
  46.                     }
  47.                 }
  48.                 else if(s == '}'){
  49.                     if (s1.size() > 0){
  50.                         char temp = (char) s1.pop();
  51.                         if(temp != '{'){
  52.                             flag = true;
  53.                             break;
  54.                         }
  55.                     }
  56.                     else{
  57.                         flag = true;
  58.                         break;
  59.                     }
  60.                 }
  61.             }
  62.             if(!flag && s1.size() == 0){
  63.                 System.out.println("YES");
  64.             }else{
  65.                 System.out.println("NO");
  66.             }
  67.         }
  68.     }
  69. }
  70.  
  71. /*
  72.  
  73. Sample Input
  74.  
  75. 3
  76. {[()]}
  77. {[(])}
  78. {{[[(())]]}}
  79.  
  80.  
  81. Sample Output
  82.  
  83. YES
  84. NO
  85. YES
  86. */
Add Comment
Please, Sign In to add comment