Java 二叉树中的下一个最大值

Java 二叉树中的下一个最大值,java,algorithm,binary-tree,Java,Algorithm,Binary Tree,给定一个节点,要查找下一个最大值,有两种情况: 第一:如果节点有正确的子节点。如果是,则下一个最大值位于其右子级的左子树的最左侧 第二:如果节点是一个叶,则下一个最大值位于其父节点之一。那是哪位家长呢 谢谢 您的第一个案例完全正确。但是,第二种情况应改为: 2) 如果节点没有正确的子节点(注意:这并不意味着它是一个叶子!),那么您必须找出从节点到根节点的(唯一)路径,直到您遇到一个比其子节点大的父节点。该父节点是下一个较大的节点。如果不存在这样的父节点,那么我们开始使用的节点是树中最大的节点

给定一个节点,要查找下一个最大值,有两种情况:

  • 第一:如果节点有正确的子节点。如果是,则下一个最大值位于其右子级的左子树的最左侧

  • 第二:如果节点是一个叶,则下一个最大值位于其父节点之一。那是哪位家长呢


谢谢

您的第一个案例完全正确。但是,第二种情况应改为:


2) 如果节点没有正确的子节点(注意:这并不意味着它是一个叶子!),那么您必须找出从节点到根节点的(唯一)路径,直到您遇到一个比其子节点大的父节点。该父节点是下一个较大的节点。如果不存在这样的父节点,那么我们开始使用的节点是树中最大的节点。

因此我们不是为您做作业的地方。我们可以给你一般的指导,但我们不会给你家庭作业的答案。向我们展示你迄今为止所做的一切,我们也许能为你指明正确的方向。没有必要屈尊俯就。这个问题给人的印象是家庭作业问题。也许如果你在问题中提到了你在评论中写给我的所有内容,你就不会坐在-6票的位置上。一个节点只能有一个父节点。我猜你的意思是“前任”,对吧?