Guest User

Untitled

a guest
Jun 19th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.41 KB | None | 0 0
  1. def is_balanced?(string)
  2. stack = []
  3. string.chars.each do |char|
  4. case char
  5. when '('
  6. stack.push '('
  7. when ')'
  8. if stack.empty? || stack.pop != '('
  9. return false
  10. end
  11. end
  12. end
  13. stack.empty?
  14. end
  15.  
  16. data = [
  17. "a+(b*c)-2-a",
  18. "(a+b*(2-c)-2+a)*2",
  19. "(a*b-(2+c)",
  20. "2*(3-a))",
  21. ")3+b*(2-c)("
  22. ]
  23.  
  24. data.each do |string|
  25. puts "#{string}: #{is_balanced?(string)}"
  26. end
Add Comment
Please, Sign In to add comment