20. Valid Parentheses
Input: "()"
Output: trueInput: "()[]{}"
Output: trueInput: "(]"
Output: falseInput: "([)]"
Output: falseInput: "{[]}"
Output: trueLast updated
Input: "()"
Output: trueInput: "()[]{}"
Output: trueInput: "(]"
Output: falseInput: "([)]"
Output: falseInput: "{[]}"
Output: trueLast updated
# @param {String} s
# @return {Boolean}
def is_valid(s)
if s.empty?
return true
elsif s.chars.size % 2 != 0
return false
end
new_arry = []
s.chars.each do |v|
if v == "(" || v == "{" || v == "["
new_arry.push(v)
else
top = new_arry.pop
if (top == "(" && v != ")") || (top == "[" && v != "]") || (top == "{" && v != "}")
return false
end
end
end
return new_arry.empty?
end