证明此假设不适用于所有二叉搜索树



(二进制搜索树是一个二进制树,每个节点都可以有2个孩子,右边的右边比节点大,左边应小于节点。)

我有一个我想反驳的理论。它说,对于任何二进制树,如果我们采用搜索路径(称其为s)到叶节点,则s左侧的任何节点都必须小于s上的任何节点,并且右侧的任何节点都必须是比S上的任何节点都大。换句话说:左上的节点;S&LT上的节点右边的节点。是否有反示例可以反驳这一理论?

例如,如果我们有这棵树:

节点k的搜索路径将是m-> f-> h-> k

左侧的一组节点包含C,A,D,G

右侧的集合包含v,s,p,t,x,w

什么是一个很好的反面示例?

谢谢。

这并不是真正的答案,但不适合评论...

我认为您对"二进制搜索树"的定义有点缺乏 - 毕竟,这将符合您的定义:

   B
    
     C
    / 
   A   D

但是,这不是真正的二进制搜索树 - 您的定义缺乏递归关系。在二进制搜索树中,节点的左子树中的所有元素都小于节点标签,右子树中的所有元素都更大 - 不仅是直立的孩子。

也许具有更精确的定义会帮助您思考自己的"理论"。

最新更新