题解 | #二叉搜索树的后序遍历序列#

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

https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd

//递归 的做法

class Solution {
public:
    bool VerifySquenceOfBST(vector<intsequence) {
        if(sequence.size()==0return false;
        if(sequence.size()==1return true;
        int index=0;
        int last=sequence[sequence.size()-1];
        vector<int> left;
        while(sequence[index]<last){
            left.push_back(sequence[index]);
            index++;
        }//index为右子树第一个数的位置
        int midpos=index;
        vector<int> right;
        while(sequence[index]>last){
            right.push_back(sequence[index]);
            index++;            
        }
        if(index!=sequence.size()-1return false;//没有成功划分
        else{
            if(left.size()!=0&&right.size()!=0)
                return VerifySquenceOfBST(left)&&VerifySquenceOfBST(right);
            else if(left.size()!=0return VerifySquenceOfBST(left);
            else return VerifySquenceOfBST(right);
        }
    }
};
全部评论

相关推荐

zzzzhz:兄弟你先猛猛投简历至少三百家,能约到面试就去面。最近可以速成智能小车,智慧家居烂大街的项目,不需要自己写,只需要把里面的代码讲解看明白就行。把其中涉及到的八股文都拿出来单独背一下,我去年找工作就一个智能小车智慧家居找了10k差不多。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务