Advertisement
Guest User

Untitled

a guest
Jul 28th, 2017
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. import java.util.HashMap;
  2. import java.util.Arrays;
  3. import java.util.Stack;
  4.  
  5.  
  6. public class Braces {
  7. public static void main(String[] args) {
  8. String input1 = "()[]{}"; //YES
  9. String input2 = "(}{)[]"; //NO
  10.  
  11. isBalanced(input1);
  12. isBalanced(input2);
  13. }
  14.  
  15. public static void isBalanced(String input) {
  16. HashMap<Character, Character> matchingBraces = new HashMap<Character, Character>();
  17. matchingBraces.put('{', '}');
  18. matchingBraces.put('(', ')');
  19. matchingBraces.put('[', ']');
  20.  
  21. Stack<Character> stack = new Stack<Character>();
  22.  
  23. for (int i = 0; i < input.length(); i++) {
  24. char currentBrace = input.charAt(i);
  25. if (matchingBraces.get(currentBrace) != null) { //opening brace
  26. stack.push(currentBrace);
  27. } else { //closing brace
  28. if (currentBrace != matchingBraces.get(stack.pop())) {
  29. System.out.println("NO");
  30. return;
  31. }
  32. }
  33. }
  34. if (!stack.empty()) {
  35. System.out.println("NO");
  36. return;
  37. }
  38. System.out.println("YES");
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement