1047.删除字符串中的相邻重复项
先将字符串转为字符数组 第一个元素先进栈
循环这个字符数组与栈中元素比较
如果相等则将栈中元素出栈
不相等则入栈
循环完栈中元素出栈得到删除后的逆序字符串
最后循环得到删除后的正序字符串并且返回
class Solution {public String removeDuplicates(String s) {char[] a=s.toCharArray();Deque<Character> stack=new LinkedList();stack.push(a[0]);for(int i=1;i<a.length;i++){if(stack.peek()!=null) {if (stack.peek() == a[i]) {stack.pop();} else {stack.push(a[i]);}}else {stack.push(a[i]);}}char[] b=new char[stack.size()];char[] c=new char[stack.size()];for(int i=0;i<b.length;i++){b[i]=stack.pop();}for(int j=0;j<b.length;j++){c[j]=b[b.length-1-j];}String s2=new String(c);return s2;}
}
1047.删除字符串中的相邻重复项相关推荐
- Suzy找到实习了吗Day 11 |栈与队列中途 20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值
Day 11 20. 有效的括号 1047. 删除字符串中的所有相邻重复项 150. 逆波兰表达式求值 20. 有效的括号 注意栈不是一个数据结构,需要自己用list实现栈的逻辑 class Solu ...
- 算法训练Day11|LeetCode 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值
题目链接:20. 有效的括号 第一种情况:已经遍历完了字符串,但是栈不为空,说明有相应的左括号没有右括号来匹配,所以return false 第二种情况:遍历字符串匹配的过程中,发现栈里没有要匹配的字 ...
- 算法训练第十一天|力扣20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值
20. 有效的括号 题目链接:有效的括号 参考:https://programmercarl.com/0020.%E6%9C%89%E6%95%88%E7%9A%84%E6%8B%AC%E5%8F%B ...
- 算法训练Day11 | LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)
目录 LeetCode232.用栈实现队列 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 LeetCode225. 用队列实现栈 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 ...
- 代码随想录算法训练Day11 LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)
代码随想录算法训练Day11 | LeetCode232. 用栈实现队列(模拟):225.用队列实现栈(模拟):20. 有效的括号(栈应用):1047. 删除字符串中的所有相邻重复项(栈应用) 关于栈 ...
- 【Leetcode栈与队列】1047.删除字符串中的所有相邻重复项 6120.数组能形成多少数对(一些题外话和做题经验!!看作对对碰游戏!!)
文章目录 题外话 1.游戏开发可能使用栈结构 2.编程语言的一些功能实现也会使用栈结构 Leetcode 1047.删除字符串中的所有相邻重复项 1.问题描述 2.解决方案 Leetcode 6120 ...
- #37 删除字符串中连续的重复字符
题目描述: 实现删除字符串中连续的重复字符(除字母和数字).输入为字符串,将字符串中连续重复的,不是字母且不是数字的字符删去,然后输出处理后的字符串. 输入字符串最长50个字符,之后截断,只输出处理后 ...
- 1047.删除字符串中的所有相邻重复项
给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...
- 1047. 删除字符串中的所有相邻重复项
删除字符串中的所有相邻重复项 题目 分析 我的解答 题目 删除字符串中的所有相邻重复项 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项 ...
最新文章
- SuSE下VNCVIEWER没有出现界面,只有shell窗口的问题
- 大话Django之一:安装与启动
- 我的世界 文件保存位置
- osg着色语言着色_探索数字着色
- DB2单表排序查询报错分析及解决办法
- 在Oracle/SQL Service中通过Function返回Table
- matlab中confcounts,Matlab函数分类汇总—R2011b版.doc
- Python入门——运行python的两种方式变量常量
- 黑马程序员Java零基础视频教程(2022最新Java)B站视频学习笔记-Day8-面向对象
- 诺顿企业版安装找不到路径
- 钉钉/企业微信对接用友T+生成财务凭证准备资料
- 阿铭Linux_公有云学习笔记20190116
- 嵌入式系统串口解析二进制数_串口基本原理详解
- background 互联网图片_微信小程序 background-image设置背景图片不显示的解决办法...
- BZOJ 4484: [Jsoi2015]最小表示 拓扑排序 bitset
- 给大忙人看的码农翻身记
- 公众号运营必备三大神器,满足你的所有需求
- 1U,2U,3U,4U机箱面板,U的含义
- 数据可视化之中国足球队在国际足联及亚洲的历史排名看这儿
- CMake是什么?有什么用?
热门文章
- centos创建禁止登录用户
- 设计模式在我工作中的巧妙实践
- MySQL中exists与in的使用
- 闭包(Closures)
- jquery实现层级显示 效果图_php运用无限级分类实现评论及回复功能
- 有趣的python项目_推荐个超好玩的Python项目
- css位置布局,CSS定位布局相关
- mysql返回查询条件_mysql条件查询
- matlab 二值化_MATLAB实验,图像二值化处理
- 判断设备网络状态_生成树RSTP,快速生成树协议,交换网络必用的破环协议,面试必备...