美文网首页
有效的括号 - Rust

有效的括号 - Rust

作者: 曾大稳丶 | 来源:发表于2022-08-01 11:20 被阅读0次
    image.png
    image.png

    题目解析
    采用栈辅助法。

    pub fn is_valid(s: String) -> bool {
            let mut stack = vec!['0'];
            for c in s.chars() {
                match c {
                    '(' | '{' | '['=>{
                        stack.push(c);
                    }, 
                    '}' =>{
                        if (stack.pop().unwrap() != '{'){
                            return false;
                        }
                    }
                    ')' =>{
                        if (stack.pop().unwrap() != '('){
                            return false;
                        }
                    },
                    ']' =>{
                        if (stack.pop().unwrap() != '['){
                            return false;
                        }
                    },
                    _ =>(),
                }
            }
            return stack.len() == 1; 
    }
    

    复杂度分析:
    时间复杂度: O(n)。
    空间复杂度: O(n)。

    相关文章

      网友评论

          本文标题:有效的括号 - Rust

          本文链接:https://www.haomeiwen.com/subject/skqrwrtx.html