问题遇到的现象和发生背景
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] == '#';
}
};