判断某数组是不是二叉搜索树的后序遍历序列

    xiaoxiao2021-03-25  110

    判断某数组是不是二叉搜索树的后序遍历序列:

    所谓二叉搜索树,是指根节点左子树结点都小于根结点,右子树结点都大于根结点;

    算法实现如下:

    bool VerifySquenceOfBST(int sequence[],int length){

    if(sequence[]==null || length<=0){ return false; } int root=sequence[length-1]; int i=0; //左子结点小于根节点 for(;i<length-1;i++){ if(sequence[i]>root){ break; } } //右子结点大于根结点 for(int j=i;j<length-1;j++){ if(sequence[j]<root){ return false; } } //判断左子树是不是二叉搜索树 bool left=true; if(i>0){ left=VerifySquenceOfBST(sequence,i); } //判断右子树是不是二叉搜索树 bool right=true; if(i<length-1){ right=VerifySquenceOfBST(sequence+i,length-i-1); } return(left && right); }//判断某数组是不是二叉搜索树的后序遍历序列
    转载请注明原文地址: https://ju.6miu.com/read-12715.html

    最新回复(0)