输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。
二叉搜索树(BST , Binary Search Tree),也称为二叉排序树或二叉查找树。二叉搜索树是一棵二叉树,也是可以为空。
如果二叉搜索树不为空,那么,满足以下条件:
二叉树的后序遍历
操作定义:若二叉树为空,则空操作;否则
(1)后序遍历左子树;
(2)后序遍历右子树。
(3)访问根结点;
按照二叉树的后序遍历,我们可以知道,最后一个元素就是整棵二叉树的根节点,而前半部分则是比最后一个元素小的数,后半部分都是比最后一个元素大的元素
function VerifySquenceOfBST(sequence)
{
// write code here
var length = sequence.length;
if(length == 0) return false;
var i = 0;
while(--length){
while(sequence[i] < sequence[length]) i++;
while(sequence[i] > sequence[length]) i++;
if(i < length) return false;
i = 0;
}
return true;
}
上一篇:22-从上往下打印二叉树
下一篇:24-二叉树中和为某一值的路径