先将字符串转为字符数组 第一个元素先进栈

循环这个字符数组与栈中元素比较

如果相等则将栈中元素出栈

不相等则入栈

循环完栈中元素出栈得到删除后的逆序字符串

最后循环得到删除后的正序字符串并且返回

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.删除字符串中的相邻重复项相关推荐

  1. Suzy找到实习了吗Day 11 |栈与队列中途 20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值

    Day 11 20. 有效的括号 1047. 删除字符串中的所有相邻重复项 150. 逆波兰表达式求值 20. 有效的括号 注意栈不是一个数据结构,需要自己用list实现栈的逻辑 class Solu ...

  2. 算法训练Day11|LeetCode 20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值

    题目链接:20. 有效的括号 第一种情况:已经遍历完了字符串,但是栈不为空,说明有相应的左括号没有右括号来匹配,所以return false 第二种情况:遍历字符串匹配的过程中,发现栈里没有要匹配的字 ...

  3. 算法训练第十一天|力扣20. 有效的括号,1047. 删除字符串中的所有相邻重复项,150. 逆波兰表达式求值

    20. 有效的括号 题目链接:有效的括号 参考:https://programmercarl.com/0020.%E6%9C%89%E6%95%88%E7%9A%84%E6%8B%AC%E5%8F%B ...

  4. 算法训练Day11 | LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)

    目录 LeetCode232.用栈实现队列 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 LeetCode225. 用队列实现栈 1. 思路 2. 代码实现 3. 复杂度分析 4. 思考 ...

  5. 代码随想录算法训练Day11 LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)

    代码随想录算法训练Day11 | LeetCode232. 用栈实现队列(模拟):225.用队列实现栈(模拟):20. 有效的括号(栈应用):1047. 删除字符串中的所有相邻重复项(栈应用) 关于栈 ...

  6. 【Leetcode栈与队列】1047.删除字符串中的所有相邻重复项 6120.数组能形成多少数对(一些题外话和做题经验!!看作对对碰游戏!!)

    文章目录 题外话 1.游戏开发可能使用栈结构 2.编程语言的一些功能实现也会使用栈结构 Leetcode 1047.删除字符串中的所有相邻重复项 1.问题描述 2.解决方案 Leetcode 6120 ...

  7. #37 删除字符串中连续的重复字符

    题目描述: 实现删除字符串中连续的重复字符(除字母和数字).输入为字符串,将字符串中连续重复的,不是字母且不是数字的字符删去,然后输出处理后的字符串. 输入字符串最长50个字符,之后截断,只输出处理后 ...

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

    给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项删除操作,直到无法继续删除. 在完成所有重复项删除操作后返回最终的字符串.答案保证唯一. ...

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

    删除字符串中的所有相邻重复项 题目 分析 我的解答 题目 删除字符串中的所有相邻重复项 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们. 在 S 上反复执行重复项 ...

最新文章

  1. SuSE下VNCVIEWER没有出现界面,只有shell窗口的问题
  2. 大话Django之一:安装与启动
  3. 我的世界 文件保存位置
  4. osg着色语言着色_探索数字着色
  5. DB2单表排序查询报错分析及解决办法
  6. 在Oracle/SQL Service中通过Function返回Table
  7. matlab中confcounts,Matlab函数分类汇总—R2011b版.doc
  8. Python入门——运行python的两种方式变量常量
  9. 黑马程序员Java零基础视频教程(2022最新Java)B站视频学习笔记-Day8-面向对象
  10. 诺顿企业版安装找不到路径
  11. 钉钉/企业微信对接用友T+生成财务凭证准备资料
  12. 阿铭Linux_公有云学习笔记20190116
  13. 嵌入式系统串口解析二进制数_串口基本原理详解
  14. background 互联网图片_微信小程序 background-image设置背景图片不显示的解决办法...
  15. BZOJ 4484: [Jsoi2015]最小表示 拓扑排序 bitset
  16. 给大忙人看的码农翻身记
  17. 公众号运营必备三大神器,满足你的所有需求
  18. 1U,2U,3U,4U机箱面板,U的含义
  19. 数据可视化之中国足球队在国际足联及亚洲的历史排名看这儿
  20. CMake是什么?有什么用?

热门文章

  1. centos创建禁止登录用户
  2. 设计模式在我工作中的巧妙实践
  3. MySQL中exists与in的使用
  4. 闭包(Closures)
  5. jquery实现层级显示 效果图_php运用无限级分类实现评论及回复功能
  6. 有趣的python项目_推荐个超好玩的Python项目
  7. css位置布局,CSS定位布局相关
  8. mysql返回查询条件_mysql条件查询
  9. matlab 二值化_MATLAB实验,图像二值化处理
  10. 判断设备网络状态_生成树RSTP,快速生成树协议,交换网络必用的破环协议,面试必备...