繁体   English   中英

Java-AVL树搜索

[英]Java - AVL tree search

我已验证有关树t实际上是AVL树。 我的问题是,无论搜索的字符串是否在树中, ss2始终为null 我怀疑这比AVL树问题更像是递归问题。

t.val产生节点字符串的值。 t.leftt.right产生节点的左和右子节点。

   private static AVLTreeNode<String> search( AVLTreeNode<String> t, String x )
    {
        if( t==null ) return null;
        if( t.val==x ) return t;
        AVLTreeNode s=search(t.right,x);
        AVLTreeNode s2=search(t.left,x);
        if( s!=null ) return s;
        return s2;

    }

使用t.val.equals(x)代替== ,一切都应该正常工作。 ==检查两个对象是否具有相同的引用(完全相同的字符串,保存在内存中的相同位置), equals(Object)检查两个对象的内容是否相等(取决于实现)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM