![](https://i-blog.csdnimg.cn/direct/fad5cd8679104e2ab4d917525a4cf873.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
牛客网
文章平均质量分 87
牛客网刷题记录
小满@
自古程序员如美人 不许人间见白头
展开
-
【算法入门-栈】逆波兰表达式求值
表达式一般由操作数(Operand)、运算符(Operator)组成,例如算术表达式中,通常把运算符放在两个操作数的中间,这称为中缀表达式(Infix Expression),如A+B。波兰数学家Jan Lukasiewicz提出了另一种数学表示法,它有两种表示形式:把运算符写在操作数之前,称为波兰表达式(Polish Expression)或前缀表达式(Prefix Expression),如+AB;原创 2024-07-10 21:26:59 · 892 阅读 · 0 评论 -
【算法入门-栈】有效括号序列
元素入栈指的是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;括号的匹配规则应该符合先进后出原理:最外层的括号即最早出现的左括号,也对应最晚出现的右括号,即先进后出,因此可以使用同样先进后出的栈:遇到左括号就将相应匹配的右括号加入栈中,后续如果是合法的,右括号来的顺序就是栈中弹出的顺序。给出一个仅包含字符’(‘,’)‘,’{‘,’}‘,’[‘和’]',的字符串,判断给出的字符串是否是合法的括号序列。括号必须以正确的顺序关闭,"()“和”()[]{}“都是合法的括号序列,但”(]“和”([)]"不合法。原创 2024-07-09 19:57:50 · 265 阅读 · 0 评论 -
【算法入门-栈】栈的压入、弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。元素出栈指的是从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。题目要我们判断两个序列是否符合入栈出栈的次序,我们就可以用一个栈来模拟。自然是遇到一个元素等于当前的出栈序列的元素,那我们就放弃入栈,让它先出来。原创 2024-07-09 00:38:58 · 727 阅读 · 0 评论