二叉搜索树的后序遍历序列

2020-07-29  本文已影响0人  Crazy_Bear
class Solution {
public:
    bool VerifySquenceOfBST(vector<int> sequence) {
       if(sequence.empty()) return false;
        return verifySquenceOfBST(sequence);
    }
    bool verifySquenceOfBST(vector<int> sequence){
         if(sequence.size() == 0 || sequence.size() == 1) return true;
        vector<int> left;
        vector<int> right;
        int i = 0;
        int j = 0;
        for(i = 0; i < sequence.size()-1; i++)
            if(sequence[i] < sequence[sequence.size()-1])
                left.push_back(sequence[i]);
            else break;
        for(j = i; j< sequence.size()-1;j++)
            if(sequence[j] > sequence[sequence.size()-1])
                right.push_back(sequence[j]);
            else return false;
        return verifySquenceOfBST(left) && verifySquenceOfBST(right);
    }
};
上一篇下一篇

猜你喜欢

热点阅读