1

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

为了让它工作,我需要找到最大值。你怎么做呢?伪代码或提示将不胜感激。我被卡住了,甚至不确定如何开始。

4

2 回答 2

5

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

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

考虑到这个定义,应该很容易找到最大值。

于 2012-04-30T23:46:16.653 回答
0

一个简单的伪代码就是这样。我认为它与二进制搜索无关。

int maxi = 0
foreach(array as item) // or any other loop
    if item>maxi then maxi = item
于 2012-04-30T23:50:32.203 回答