二叉搜索树,你怎么找到最大值?

时间:2012-04-30 23:42:41

标签: java binary-search-tree

我在业余时间一直在使用二进制搜索树,我希望能够从树中删除节点。

为了使其工作,我需要找到最大值。你是怎么做的?可以理解伪代码或提示。我陷入困境,并不确定如何开始这个。

2 个答案:

答案 0 :(得分:5)

二叉搜索树具有以下属性:

  

节点的左子树仅包含键小于节点键的节点。   节点的右子树仅包含键大于节点键的节点。   左右子树也必须是二叉搜索树。

考虑到这个定义,找到最大值

应该很容易

答案 1 :(得分:0)

一个简单的伪代码就是这个。我认为这对于二元搜索是不可取的。

int maxi = 0
foreach(array as item) // or any other loop
    if item>maxi then maxi = item