[原题链接](https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string/solution/qian-duan-shi-tang-ti-jie-chao-hao-li-ji-lm88/) ## 栈 1. 扫描过的字符入栈暂存 2. 如果扫描的当前字符与栈顶元素相同,则将栈顶元素出栈 3. 将栈中剩余的字符转换成字符串 ```js const removeDuplicates = function(s) { const stack = [] for (const i of s) { if (stack.length && stack[stack.length - 1] === i) { stack.pop() } else { stack.push(i) } } return stack.join('') } ``` - 时间复杂度: O(n) - 空间复杂度: O(n)