2020-05-10
1.题目描述
比较含退格的字符串
2.题解
直接使用栈即可,需要注意的是,如果栈为空且当前元素值为'#',则不做处理即可。
3.代码
class Solution {
public:
bool backspaceCompare(string S, string T) {
stack<char>s1,s2;
int l1=S.size(),l2=T.size();
for (int i=0;i<l1;i++){
if (S[i]=='#'){
if (!s1.empty()) s1.pop();
}else{
s1.push(S[i]);
}
}
for (int i=0;i<l2;i++){
if (T[i]=='#'){
if (!s2.empty()) s2.pop();
}else{
s2.push(T[i]);
}
}
string r1="",r2="";
while(!s1.empty()){
r1+=s1.top();
s1.pop();
}
while(!s2.empty()){
r2+=s2.top();
s2.pop();
}
if (r1==r2) return true;
return false;
}
};