题目内容
java(栈解答)
class Solution {
public String removeDuplicates(String S) {
Stack<Character>stack=new Stack<>();
for(int i=0;i<S.length();i++){
if(stack.isEmpty()||S.charAt(i)!=stack.peek()){
stack.push(S.charAt(i));
}else{
stack.pop();
}
}
/*无论是队列还是栈,底层数据结构都是数组,可以直接通过遍历数组的方式进行遍历
原本我写的是通过reverse()实现反转,后来看了别人写的,下面的都是来自大佬的代码*/
StringBuilder str = new StringBuilder();
for (Character c : stack) {
str.append(c);
}
return str.toString();
}
}