上面刚说完栈的实现,我们现在来看一下栈的应用(简单)
我们来看一个题
👌题目就是这样,给一组括号,看括号是否匹配,匹配的话就返回true反之则false
我们先理一下思路,如何判断?
我直接说思路,当我们遇到左括号的时候就入栈,遇到右括号就让右括号与栈顶的括号比较,看是否匹配,如果匹配则弹出栈顶元素,反之则不匹配返回false,就是这样
我们画图理解一下
假如是上面的括号,首先两个都是左括号都入栈,下一个就是右括号了,需要取栈顶元素比较看是否匹配
这里看到是匹配的
下面又是左括号入栈
下面是右括号,看是否匹配
下面是最后一个右括号
此时栈为空,并且字符串中的数据也比较完毕,所以这部分括号是匹配的
下面我们看一下如何实现
如果这里有不懂栈的,可以看一下栈的实现,就是这样
主要的是思路,思路懂了写代码也就更容易一点,还有就是要画图