Java 二叉搜索树外部节点的访问
在二叉树中,外部节点是一个没有任何子节点的节点,不管是左还是右,-如果我错了,请纠正我,-在二叉搜索树中,外部节点总是空的,因为根据我的课堂讲稿,内部节点总是有2个子节点,即使没有创建,但我们假设该内部节点的子节点是空的。 那么,如果外部节点为null,我如何访问它呢 我将此代码作为BST节点类的一部分编写: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
/*
* 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,它如何为左、右子节点提供可测试的值?