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

javascript 复制代码
var removeDuplicates = function(s) {
    //设置一个空数组来储存一个字符串
    let stack = [];
    //使用 for...of 循环遍历字符串 s 中的每一个字符,当前字符存储在变量 v 中
    for(v of s){
        //从栈顶弹出一个元素(即最后一个压入的元素),存储在 prev 变量中
       //如果栈是空的,pop() 会返回 undefined
        let prev = stack.pop();

        //比较弹出的前一个字符 prev 和当前字符 v
        //如果它们不相同,就把prev和v都重新装进这个栈
        //如果相同,if语句就不用执行,就等于
        if(prev != v) {
            stack.push(prev);
            stack.push(v);
        }
    }
    //最后得出的结果的字符串
    return stack.join('');
};
相关推荐
夜幽青玄4 分钟前
mybatis-plus调用报 org.springframework.dao.DataIntegrityViolationException 错误处理
开发语言·python·mybatis
洲覆5 分钟前
Redis 内存淘汰策略
开发语言·数据库·redis·缓存
偶尔贪玩的骑士24 分钟前
Kioptrix Level 1渗透测试
linux·开发语言·网络安全·php
それども35 分钟前
忽略Lombok构建警告
java·开发语言·jvm
ღ_23331 小时前
vue3二次封装element-plus表格,slot透传,动态slot。
前端·javascript·vue.js
xiaohe06011 小时前
🔒 JavaScript 不是单线程吗?怎么还能上“锁”?!
javascript·github
摸着石头过河的石头1 小时前
JavaScript继承的多种实现方式详解
前端·javascript
Ashley的成长之路1 小时前
NativeScript-Vue 开发指南:直接使用 Vue构建原生移动应用
前端·javascript·vue.js
qiuiuiu4131 小时前
正点原子RK3568学习日志12-注册字符设备
linux·开发语言·单片机·学习·ubuntu
liu****1 小时前
20.哈希
开发语言·数据结构·c++·算法·哈希算法