二叉搜索树的java顺序,它按预顺序打印自身
我在准备考试,我发现了这个问题
假设二叉树预排序打印(打印、递归调用左、递归调用右)方法给出以下输出:
{10, 8, 1, 9, 12, 15, 14}
如果我们知道这是一个二叉搜索树,那么该树是如何构建的
所以如果我没有错的话,它必须是这样的:
10
/ \
8 12
/ \ \
1 9 15
\
14
对吗
你可以在下面搜索框中键入要查询的问题!
我在准备考试,我发现了这个问题
假设二叉树预排序打印(打印、递归调用左、递归调用右)方法给出以下输出:
{10, 8, 1, 9, 12, 15, 14}
如果我们知道这是一个二叉搜索树,那么该树是如何构建的
所以如果我没有错的话,它必须是这样的:
10
/ \
8 12
/ \ \
1 9 15
\
14
对吗
# 1 楼答案
在二元搜索树中,左子级应该低于其父级,右子级应该大于其父级,因为
14
应该位于15
的左侧HERE你可以找到一个很好的BST解释
# 2 楼答案
这是不正确的,因为树必须保持其搜索能力,这意味着它必须保持一个恒定的形式。如果节点14是正确的子节点,则会丢失此表单。14应该是节点15的左子节点。如果您查看节点8,我们会看到,如果值小于8,则它位于左侧,否则该值为右侧子节点