題目描述
輸入一個整數數組,判斷該數組是不是某二叉搜索樹的後序遍歷的結果。如果是則輸出Yes,否則輸出No。假設輸入的數組的任意兩個數字都互不相同
function VerifySquenceOfBST(sequence) {
var len = sequence.length;
if(len == 0) {
return false;
}
return judge(sequence,0,len - 1);
}
function judge(seq,start,end) {
if(start >= end) {
return true;
}
var i = start;
while(i < end && seq[i] < seq[end]) {
i++;
}
for(var j = i; j < end; j++){
if(seq[j] < seq[end]) {
return false;
}
}
return judge(seq,start,i-1) && judge(seq,i,end-1)
}