美文网首页
利用栈解决括号匹配问题

利用栈解决括号匹配问题

作者: 梁森的简书 | 来源:发表于2021-02-03 23:08 被阅读0次

遍历字符串,遇到左括号,入栈。遇到有括号,出栈。遍历完后,如果栈中还有元素就说明括号不匹配,否则匹配。

/// 利用栈解决括号匹配问题
    private func isMach(str: String) -> Bool {
        var stack = Stack()
        for char in str.enumerated() {
            let s = char.element
            if s == "(" {
                stack.push(item: s)
            } else if s == ")" {
                let item = stack.pop()
                if item == nil {
                    return false
                }
            }
        }
        if stack.isEmpty() {
            return true
        } else {
            return false
        }
    }

demo地址:https://github.com/yangguanghei/studyDateStructure

相关文章

  • 利用栈解决括号匹配问题

    遍历字符串,遇到左括号,入栈。遇到有括号,出栈。遍历完后,如果栈中还有元素就说明括号不匹配,否则匹配。 demo地...

  • 栈、队列解决问题

    栈解决括号匹配问题 一个字符串中包含小括号、中括号、大括号,判断该字符串中的括号是否匹配 ()()[]{} 匹配...

  • chap3-栈和队列

    括号匹配问题 // 括号匹配,遇到 '\0' 结束// 遇到花、中、圆左括号进栈,遇到花、中、圆右括号检查栈顶元素...

  • 检测成对括号

    检测成对出现的括号 利用栈的知识点遍历字符串,遇到左括号进栈,右括号出栈进出栈的括号不匹配则 return false

  • 互联网秋招刷题leetcode总结——栈与队列

    栈 括号类问题 20. 有效的括号(easy) 遍历字符串,每次与栈顶括号进行匹配,匹配成功栈顶弹出,否则继续压入...

  • 20. 有效的括号

    自己解法 括号匹配问题,第一想法就是使用栈,左括号入栈,遇到匹配的右括号出栈,如果中间有不符合的右括号,直接返回f...

  • (栈)括号匹配问题

    c语言版

  • Python用栈解决括号匹配问题

    栈 极客时间上王争老师说: 关于“栈”,我有一个非常贴切的例子,就是一摞叠在一起的盘子。我们平时放盘子的时候,都是...

  • 2019-05-12(栈应用 括号匹配 leetcode 20

    括号匹配思路: 1、遇到左边的括号 进栈 ,2、遇到右边的括号获取原来栈 中栈顶元素,与刚遇到的值进行匹配,匹配成...

  • 20. Valid Parentheses

    使用栈数据结构: 遇到左括号,需要压栈。 遇到右括号,判断栈顶是否和当前右括号匹配;若不匹配则返回false,否则...

网友评论

      本文标题:利用栈解决括号匹配问题

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