https://leetcode-cn.com/problems/verify-preorder-serialization-of-a-binary-tree/
打算用一个vector模拟一个栈,末尾两个##就删去,把末尾的元素换成#,请问这个代码有问题吗
class Solution {
public:
bool isValidSerialization(string preorder) {
vector<char> st;
int n;
for(int i = 0;i<preorder.size();i++){
st.push_back(preorder[i]);
}
while(st.size()>=3&&st[st.size()-1] == '#'&&st[st.size()-2] == '#'&&st[st.size()-3] != '#'){
st.pop_back();
st.pop_back();
st.pop_back();
st.push_back('#');
}
return st.size() == 1&&st[0] == '#';
}
};
我看着没啥问题,末尾两个##就删去,你这判断了倒数3个