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('');
};
相关推荐
小高0072 分钟前
🔍Vue 隐藏神技巧:99% 开发者没用过,却能让代码简洁 50%
前端·javascript·vue.js
艾小码4 分钟前
React Hooks时代:抛弃Class,拥抱函数式组件与状态管理
前端·javascript·react.js
Forward♞5 分钟前
Qt——实现”Hello World“、认识对象树与Qt坐标系
开发语言·qt
鹏多多6 分钟前
js使用History.replaceState实现不刷新修改浏览器url
前端·javascript·浏览器
晴空雨6 分钟前
关于箭头函数和 ES6 的继承与 ES5 组合寄生式继承的区别
javascript
草莓熊Lotso7 分钟前
《吃透 C++ 类和对象(中):拷贝构造函数与赋值运算符重载深度解析》
开发语言·c++·经验分享·笔记·其他
今禾8 分钟前
JavaScript 响应式系统深度解析:从 `Object.defineProperty` 到 `Proxy` 的演进与优化
前端·javascript·面试
Mintopia12 分钟前
《会聊天的文件筐:用 Next.js 打造“图音双绝”的上传组件》
前端·javascript·aigc
楚Y6同学16 分钟前
QT之键盘控制虚拟遥控系统开发总结
开发语言·c++·qt·串口通信
遂心_26 分钟前
深入响应式原理:从 Object.defineProperty 到 Proxy 的进化之路
前端·javascript