我正在尝试找到二叉搜索树的定义,并且我一直在寻找不同的定义.
有人说,对于任何给定的子树,左子键小于或等于根.
有人说,对于任何给定的子树,右子键大于或等于根.
我的旧大学数据结构书中说"每个元素都有一个键,没有两个元素具有相同的键."
是否存在bst的通用定义?特别是关于如何处理具有相同密钥的多个实例的树.
编辑:也许我不清楚,我看到的定义是
1)左<= root <右
2)左<root <=右
3)左<root <右,这样就不存在重复的密钥.
我知道,BST不允许重复.例如,如果我有一个单词"RABSAB".
上述字符串的二进制搜索树是:
R
/\
A S
\
B
Run Code Online (Sandbox Code Playgroud)
如果我们想在树中包含重复项,该怎么办?树怎么会改变?我在接受采访时被问到这个问题.
他们让我画画:
任何帮助表示赞赏!
PS:通过绘制相关树帮助我