Java 二叉搜索树外部节点的访问

Java 二叉搜索树外部节点的访问,java,binary-search-tree,Java,Binary Search Tree,在二叉树中,外部节点是一个没有任何子节点的节点,不管是左还是右,-如果我错了,请纠正我,-在二叉搜索树中,外部节点总是空的,因为根据我的课堂讲稿,内部节点总是有2个子节点,即使没有创建,但我们假设该内部节点的子节点是空的。 那么,如果外部节点为null,我如何访问它呢 我将此代码作为BST节点类的一部分编写: /* * Checks if this node is an internal node. * Returns true if it is internal node, false

在二叉树中,外部节点是一个没有任何子节点的节点,不管是左还是右,-如果我错了,请纠正我,-在二叉搜索树中,外部节点总是空的,因为根据我的课堂讲稿,内部节点总是有2个子节点,即使没有创建,但我们假设该内部节点的子节点是空的。 那么,如果外部节点为null,我如何访问它呢

我将此代码作为BST节点类的一部分编写:

/*
 * Checks if this node is an internal node. 
 * Returns true if it is internal node, false otherwise.
 */
protected boolean isInternal(){
    // TODO Put your code here
    if(this!=null)
        return true;
    else
        return false;
}

/*
 * Checks if this node is an external node. 
 * Returns true if it is external node, false otherwise.
 */
protected boolean isExternal(){
    if(this==null && this.left==null && this.right==null)
        return true;
        else return false;
}
最后一个方法给我nullPointerException

在二叉树中,外部节点是没有任何子节点(左或右)的节点

不,这里的External用作形容词。它意味着一个节点还不是树的一部分

外部节点总是空的

呃,一个节点不能为空。节点指针可以为null,但这只意味着它没有指向节点

节点可以有空指针,而不是指向子节点的指针。当它没有子节点且两个指针都为null时,它被称为叶节点。

如果为null,它如何为左、右子节点提供可测试的值?