DEV Community

hamza72x
hamza72x

Posted on • Updated on

[Grind 169] 2. Valid Parentheses

Problem Link: https://leetcode.com/problems/valid-parentheses/

Solution:

func isValid(s string) bool {
    var stacks = []rune{}

    var closeToOpen = map[rune]rune{
        ')' : '(',
        '}' : '{',
        ']' : '[',
    }

    for _, c := range s {

        n := len(stacks)

        if n > 0 {
            if stacks[n-1] == closeToOpen[c] {
                stacks = stacks[:n-1]
            } else {
                stacks = append(stacks, c)
            }
        } else {
            stacks = append(stacks, c)
        }
    }

    return len(stacks) == 0
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)