重构字符串,使用栈,使用
build(S)和build(T)
构造取出了退格和被删除字符后的字符串
然后比较它们是否相等。
//重构字符串
//使用栈,使用build(S)和build(T)构造取出了退格和被删除字符后的字符串
//然后比较它们是否相等
public boolean backspaceCompare1(String S, String T){
return build(S).equals(build(T));
}
//在build(S)中,使用栈存储每次输入的字符
public String build(String S){
Stack<Character> ans = new Stack<>();
for(char c:S.toCharArray()){
if(c!='#'){
ans.push(c);
}else if(!ans.empty()){
ans.pop();
}
}
return String.valueOf(ans);
}