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

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

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

示例1:
输入:“abbaca”
输出:“ca”
解释:
例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操作,所以最后的字符串为 “ca”。

提示:

  1. 1 <= S.length <= 20000
  2. S 仅由小写英文字母组成。
/*** @param {string} S* @return {string}*/
var removeDuplicates = function(S) {};

个人解法

var removeDuplicates = function(S) {S = S.split("");//对S中的字符两两进行判断for(var i = 0; i < S.length - 1; i++){//如果相同if(S[i] === S[i + 1]){//去掉这两个字符S.splice(i , 2);//如果这两个字符前面没有字符了if(i - 1 < 0){//那么就重新判断这个位置的字符i--;}else{//如果前面还有字符要判断前面的字符跟变化后的后面的字符是否相等i -= 2;}}}return S.join("");
};

LeetCode(1047)——删除字符串中的所有相邻重复项(JavaScript)相关推荐

  1. leetcode 1047. 删除字符串中的所有相邻重复项(栈)

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

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

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

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

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

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

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

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

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

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

    题目链接: 删除字符串中的所有相邻重复项 - 力扣(LeetCode)​leetcode-cn.com 题目描述: 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们 ...

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

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

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

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

最新文章

  1. Linux 下复制(cp)目录时排除一个或者多个目录的方法
  2. 收藏!这些 IDE 使用技巧,你都知道吗
  3. OpenCV字母识别letter recognition的实例(附完整代码)
  4. 单片机小白学步系列(十) 单片机程序下载相关知识
  5. 你一写长文章就焦虑拖延?
  6. 具有Spring Boot和数据功能的Java头优先弹性搜索
  7. 如何在SharePoint 2010项目中引用UserProfiles.dll
  8. WP7中HttpWebRequest异常
  9. HTTPS上线过程说明
  10. CSS3 Transform变形(2D转换)
  11. android 支付宝 记账本,支付宝记账本如何导出?看看这两种方法
  12. 设计一个AOA蓝牙精准室内定位系统
  13. spec 文件 autopatch
  14. golang源码解析之chan
  15. S3C2440驱动开发(一)
  16. FCW前车碰撞预警的两个重要指标——THW、TTC
  17. vue生成自定义样式二维码
  18. 怎么把做好的网页用deramweaver传上互联网 空间和域名怎么申请
  19. SGD平行算法 - Downpour SGD (单机python多线程版)
  20. epoll反应堆模型

热门文章

  1. .class与.java_Java中Class类的作用与深入理解
  2. 在UAP中如何通过WebView控件进行C#与JS的交互
  3. 2017-2018-1 20155301 实验四 外设驱动程序设计
  4. TCP协议 状态解析和状态统计
  5. iOS开发值多线程简单介绍
  6. dorado基本事件样例
  7. I/O读写的另一种方式-NIO
  8. 处理方块之间的连接线
  9. AJAX应用之注册用户即时检测
  10. php orm 内存泄漏,Lavarel Eloquent ORM常驻进程下的内存溢出问题