【每日OJ —— 20.有效的括号(栈)】

每日OJ —— 20.有效的括号(栈)

  • 1.题目:20.有效的括号(栈)
    • 2.方法讲解
      • 2.1.解法
        • 2.1.1.算法讲解
        • 2.1.2.代码实现
        • 2.1.3.提交通过展示

1.题目:20.有效的括号(栈)

【每日OJ —— 20.有效的括号(栈)】_第1张图片

2.方法讲解

2.1.解法

利用栈来实现

2.1.1.算法讲解

栈:栈是后入先出的规则来存储数据和删除数据的,所以可以利用这一点来实现。
算法思路:遍历字符串,遇到左括号’(‘, ‘[’, ‘{’,就入栈,如果遇到右括号’)’ ‘]’ ‘}’,就出栈,那这个栈顶的左括号来匹配右括号,看是否匹配。
注意:在匹配的时候,可能会出现以下几个点;
1.遇到有括号的时候栈里面已经没有元素了,所以这是数量不匹配,所以返回false。
2.遇到右括号的时候,出栈,但是栈顶的左括号不匹配,就返回false。
3.全是右括号或者都是左括号,也是不匹配的,返回false。

2.1.2.代码实现

【每日OJ —— 20.有效的括号(栈)】_第2张图片

2.1.3.提交通过展示

【每日OJ —— 20.有效的括号(栈)】_第3张图片

你可能感兴趣的:(C语言,#,数据结构,#栈,栈,算法,数据结构,c语言)