class Solution {
public:
bool check(vector<int>& inpush,vector<int>& outpop)
{
int n=inpush.size();
stack<int> st;
int i=0;int j=0;
while(i<n)
{
st.push(inpush[i]);
while(!st.empty()&&st.top()==outpop[j])
{
st.pop();
j++;
}
i++;
}
return j==i;
}
bool VerifySquenceOfBST(vector<int> sequence) {
if(sequence.empty())
{
return false;
}
vector<int> inorder(sequence);
sort(inorder.begin(),inorder.end());
return check(inorder,sequence);
}
};



京公网安备 11010502036488号