检查表达式中的括号是否匹配

编程入门 行业动态 更新时间:2024-10-20 16:26:16

检查表达式中的<a href=https://www.elefans.com/category/jswz/34/1767470.html style=括号是否匹配"/>

检查表达式中的括号是否匹配

借用栈结构

我们用栈来保存未匹配的左括号,从左到右依次扫描字符串。当扫描到左括号时,则将其压入栈中;当扫描到右括号时,从栈顶取出一个左括号。如果能够匹配,比如“(”跟“)”匹配,“[”跟“]”匹配,“{”跟“}”匹配,则继续扫描剩下的字符串。如果扫描的过程中,遇到不能配对的右括号,或者栈中没有数据,则说明为非法格式。当所有的括号都扫描完成之后,如果栈为空,则说明字符串为合法格式;否则,说明有未匹配的左括号,为非法格式。

package mainimport ("errors""fmt"
)type Stack struct {arr       []interface{} //切片stackSize int           //栈中元素的个数
}func NewStack()Stack  {stack:=Stack{arr:make([]

更多推荐

检查表达式中的括号是否匹配

本文发布于:2024-02-26 22:08:42,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1704123.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:括号   表达式

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!