With the following code, I get fatal error: Can't form a Character from an empty String
in the Console. I don't see where or what I'm doing wrong.
class Solution {
func isValid(_ s: String) -> Bool {
var dictionary = [Character: Character]()
dictionary["("] = ")"
dictionary["{"] = "}"
dictionary["["] = "]"
for (i, character) in s.characters.enumerated() {
if i % 2 == 0 {
if let idx = s.index(s.startIndex, offsetBy: i + 1, limitedBy: s.endIndex) {
if dictionary[character] != s[idx] {
return false
}
}
}
}
return true
}
}
var sol = Solution()
let test = "()[]["
print(sol.isValid(test))
Xcode 8.3.2 Swift 3+