我有homeowork编写伪代码来检查一个有效的二叉树是否是一个搜索二叉树。伪代码来检查二叉树是否是一个二叉搜索树 - 不确定递归
我创建了一个数组来保存树的有序值。如果顺序值是递减顺序,则意味着它确实是BST。不过,我在InOverArr方法中遇到了递归问题。
我需要更新数组的索引,以便按照它们在树中的顺序将值提交给数组。
我不确定在递归过程中索引是否真的被正确更新..是不是?如果你看到一些问题,你能帮我解决这个问题吗?非常感谢
伪代码
第一功能
IsBST(节点)
尺寸←的TreeSize(节点)
创建新的数组TreeArr大小的细胞数
点指数←0
几点意见: 现在我们使用IN_ORDER过程有小的变化,我叫程序的新版本:InOrderArr InOrderArr的伪代码如下IsBST
描述InOrderArr(节点,TreeArr,索引)
对于i从1到尺寸-1做
如果不是(TreeArr [I]> TreeArr [I-1])返回 假
返回真
第二功能
InOrderArr(节点,阵列,索引) 如果节点= NULL然后返回
别的
InOrderArr(节点。左,数组,索引)
treeArr [索引] = node.key
索引←索引+ 1
InOrderArr(node.right,阵列,索引)
返回
看到我已经加入到我的答案示例代码。 – CiaPan