day11 ● 20. 有效的括号● 1047. 删除字符串中的所有相邻重复项● 150. 逆波兰表达式求值
创始人
2024-06-03 03:03:56
0

20. 有效的括号

介绍

思路

一共有三种情况:

栈模拟三种不匹配的情况:

第一种:左括号多了遍历字符串时,若遇到左括号,就将右括号入栈。若约到右括号,则将栈顶元素出栈。最后,若栈中留有元素,那么不匹配

第二种:右括号不匹配遍历字符串时,若遇到左括号,就将右括号入栈。若约到右括号,则将栈顶元素出栈,若不匹配,则结束遍历,不匹配。

第三种:右括号多了遍历字符串时,若遇到左括号,就将右括号入栈。若约到右括号,则将栈顶元素出栈,若字符串还没遍历结束,栈就为空了,那么也不匹配。

定义一个栈 stack st;
剪支if(s.size%2!=0) return false
for(i=0;i

代码

class Solution {
public:bool isValid(string s) {if(s.size()%2!=0)   return false;stack st;for(int i=0;i

1047. 删除字符串中的所有相邻重复项

介绍

给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。

在 S 上反复执行重复项删除操作,直到无法继续删除。

在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。

思路

遍历字符串,开始栈里没有元素,则入栈,然后遍历下一个。下一个元素首先将于栈顶元素比较,若不相等,则入栈,继续往后遍历。遍历到的元素继续与栈顶元素比较,若相等,则满足消除条件,则将栈顶元素弹出,继续向下遍历比较,直到遍历结束,此时栈中的元素就是剩下的元素,出栈即可。

也可以用字符串来模拟这个栈,使用字符串模拟时,把尾部作为栈的出口,把头部作为栈的顶部。

定义一个字符串  string result
for(char s :S ){if(result==empty()||s!=result.back)//字符串使用尾部,模拟栈头result.push_back(s)else //相等的话,栈中的元素做一个弹出的操作result.pop_back();//字符串从尾部弹出
}
return result;//字符串从头显示

代码

class Solution {
public:string removeDuplicates(string s) {string result;for(char r:s){if(result.empty() || result.back()!=r){result.push_back(r);}else{result.pop_back();}}return result;}
};

150. 逆波兰表达式求值

介绍

思路

逆波兰表达式/后缀表达式

中置表达式:(1+2)x(3+4)

后缀表达式即为上述二叉树的后续遍历(左右中)12+34+x

如何使用栈来计算后缀表达式?

遇到数字就加入到栈中,遇到操作符就从栈中取出两个元素做计算,然后将其入栈。最后的结果就是栈中的最后一个元素。

stack st;
for(i=0;i

代码

class Solution {
public:int evalRPN(vector& tokens) {stack st;for(int i=0;i

相关内容

热门资讯

热点推荐“圣盛湖北花牌到底有没... 热点推荐“圣盛湖北花牌到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902...
热点推荐“雀神麻将到底有没有透... 您好,雀神麻将这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
热点推荐“黄冈麻将到底有没有透... 您好,黄冈麻将这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
热点推荐“聚闲仪征麻将到底有没... 聚闲仪征麻将这个游戏其实有挂的,确实是有挂的,需要了解加客服微信:【7198902】, 很多玩家在这...
热点推荐“微乐碰胡到底有没有透... 亲,微乐碰胡这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,微乐碰胡的开挂软件,名...
热点推荐“大金牙麻将到底有没有... 热点推荐“大金牙麻将到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的...
热点推荐“聚乐休闲到底有没有透... 热点推荐“聚乐休闲到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的a...
热点推荐“hhpoker脚本到... 亲,hhpoker脚本这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,hhpoke...
热点推荐“游宝内蒙麻将到底有没... 热点推荐“游宝内蒙麻将到底有没有透视挂吗”原来真的有挂一、游宝内蒙麻将AI软件牌型概率发牌机制”必胜...
热点推荐“斗棋到底有没有透视挂... 热点推荐“斗棋到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902获取下载...
热点推荐“头脑风暴到底有没有透... 热点推荐“头脑风暴到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的a...
热点推荐“微乐捉鸡麻将到底有没... 热点推荐“微乐捉鸡麻将到底有没有透视挂吗”原来真的有挂1、让任何用户在无需AI插件第三方神器的情况下...
热点推荐“棋乐游到底有没有透视... 热点推荐“棋乐游到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902获取下...
热点推荐“中至吉安麻将到底有没... 热点推荐“中至吉安麻将到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”...
热点推荐“51朝阳麻将到底有没... 热点推荐“51朝阳麻将到底有没有透视挂吗”原来真的有挂;原来确实真的有挂(需添加指定薇7198902...
热点推荐“微乐河北麻将到底有没... 您好,微乐河北麻将这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏...
热点推荐“大富翁到底有没有透视... 热点推荐“大富翁到底有没有透视挂吗”原来真的有挂是一款可以让一直输的玩家,快速成为一个“必胜”的ai...
热点推荐“泸州大贰到底有没有透... 热点推荐“泸州大贰到底有没有透视挂吗”原来真的有挂1、让任何用户在无需AI插件第三方神器的情况下就能...
热点推荐“三三麻将到底有没有透... 您好,三三麻将这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
热点推荐“拱趴大菠萝到底有没有... 亲,拱趴大菠萝这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,拱趴大菠萝的开挂软件...