✅ Valid Parentheses Solution 1
func validParenthesesIsValid(_ s: String) -> Bool {
var stack = [Character]()
let map: [Character: Character] = [")" : "(", "}" : "{", "]" : "["]
for char in s {
if map.values.contains(char) {
stack.append(char)
} else if let last = stack.last, map[char] == last {
stack.removeLast()
} else {
return false
}
}
return stack.isEmpty
}
let result = validParenthesesIsValid("()[]{}")
print(result) // Output: True
✅ Valid Parentheses Solution 2
func validParenthesesIsValid(_ s: String) -> Bool {
var stack = [Character]()
let paris: [Character: Character] = [")":"(", "}":"{", "]":"["]
for char in s {
if let match = paris[char], !stack.isEmpty, stack.last == match {
stack.removeLast()
} else {
stack.append(char)
}
}
return stack.isEmpty
}
Top comments (0)