2014-12-02 109 views
1

你好,这是一个样本树二叉树搜索节点法使用递归JAVA

---------e 
-------d----g 
----b------f--t 
---a--c--------z 

所以如果我的节点是一个字符串类。我正在努力寻找f。我要开始寻找所有可能的正确节点第一,然后在左侧的节点进行查找符合我的传入字符串

这是我迄今为止

public Node search (String string) 
    if(this.name.isEqualto.string) 
    return this; 
    else 
    if(this.next!=null) 
     return this.getRight().search; 

我不知道如何使代码回到三位并向左搜索。

+0

你不应该在BST中没有'next'指针。 B表示二进制,意思是两个,因此每个节点都有两个指针,即左右子节点 – nem035 2014-12-02 04:33:03

+0

问题仍然不清楚:( – Codeek 2014-12-02 04:33:16

回答

0

您几乎在那里:要使您的代码搜索两个子树,请不要从this.getRight的搜索中返回,除非找到该项目。相反,搜索左边的子树,像这样:

​​