Go•remove-all-adjacent-duplicates-in-string/solution.go
package main
func removeDuplicates(s string) string {
stack := []byte{}
for index := range s {
if len(stack) > 0 && stack[len(stack)-1] == s[index] {
stack = stack[:len(stack)-1]
} else {
stack = append(stack, s[index])
}
}
return string(stack)
}
Python•remove-all-adjacent-duplicates-in-string/solution.py
class Solution:
def removeDuplicates(self, s: str) -> str:
stack: list[str] = []
for character in s:
if stack and stack[-class="syntax-number">1] == character: stack.pop()
else: stack.append(character)
return class="syntax-string">"".join(stack)
TypeScript•remove-all-adjacent-duplicates-in-string/solution.ts
function removeDuplicates(s: string): string {
const stack: string[] = [];
for (const character of s) { if (stack[stack.length - class="syntax-number">1] === character) stack.pop(); else stack.push(character); }
return stack.join(class="syntax-string">"");
}