删除某些内容后,如何保持二叉搜索树节点的深度属性更新?
我想这个问题对我来说似乎比实际情况要复杂得多。在绘制了几个树并对有两个子节点(在纸上)应用delete函数之后,我注意到只有一个节点真正在深度上发生了变化--替换已删除节点的节点。
我用R的深度设置节点N的深度,它取代了节点R。
我的任务是计算每个节点的深度,并将其存储在Node类中给出的“深度”中。但是我不知道我应该如何处理这个任务。我在互联网上寻找一些示例,但没有找到任何适合我的任务的示例。这是我给定的Node类的代码: 我以为我可以用类似的方法来计算树的高度,但是没有成功。有帮助吗?
这是家庭作业。不要只发布代码。 我需要在二进制搜索树中找到给定数据点的深度。我实现了一个<code>depth()</code>方法和一个helper方法<code>countNodes()</code>,它递归地对节点进行计数。 如果我们要搜索的数据不在树中,我需要返回< code>-1。根据我的递归,我看不出这怎么可能。
问题内容: 我想在非二叉树中搜索一个项目(任何节点都可以有n个孩子)并立即退出递归。所讨论的节点可以是任何节点,而不仅仅是叶子。 这是我的代码,但我没有完整的搜索。 nNode包含: (是孩子) 和数据对象。 问题答案: 探索第一个孩子后,您不应该退出。您不需要循环前面的语句。
当删除具有两个子节点的节点时,如果指示使用标准的二叉搜索树节点删除算法,我们应该将其替换为右子树的最小节点还是左子树的最大节点?
我需要得到所有节点的x,y坐标,例如: X:使用顺序遍历访问节点之前已经访问的节点数 Y:节点从根开始的深度 例如对于节点15,x=5(15之前:已经访问过7, 8, 9, 10, 13),y=1(第二级) 树没有父指针 结果:x是错误的,y是正确的 打印: 结果: 我已经尝试过了(我认为这是不正确的,因为正确的子树遍历不计入节点) 结果是
在“二叉树”中,一个外部节点是一个没有任何子节点的节点,无论是左的还是右的,如果我错了,请纠正我-在“二叉树”中,一个外部节点总是空的,因为根据我的课堂讲稿,一个内部节点总是有两个子节点,即使没有创建,但我们假设该内部节点的子节点是空的。那么,如果外部节点为空,我如何访问它呢? 我将这段代码作为BST节点类的一部分编写: Last方法给我nullPointerException