问. 查找二叉树中最大元素的程序。

2025年3月17日 | 阅读 7 分钟

说明

在此程序中,我们将找出给定二叉树中的最大节点。我们首先定义变量 max,它将保存根的数据。然后,我们遍历左子树以找到最大的节点。将其与 max 进行比较,并将两者中的最大值存储在变量 max 中。然后,我们遍历右子树以找到最大的节点,并将其与 max 进行比较。最后,max 将拥有最大的节点。

Program to find the largest element in a Binary Tree

上面的图代表一棵二叉树。最初,max 将包含 15。递归遍历左子树。

递归遍历右子树。

递归遍历 35 的左子树

递归遍历 35 的右子树

因此,上述二叉树中的最大节点是 74。

算法

  1. 定义类 Node,它具有三个属性:data、leftright。在此,left 表示节点的左子节点,right 表示节点的右子节点。
  2. 将节点的 data 部分分配给适当的值,并将 left 和 right 分配为 null。
  3. 定义另一个类,该类有一个 root 属性。
    1. Root 表示树的根节点,它被初始化为 null。
    2. largestElement() 将找出二叉树中的最大节点
      1. 它检查根是否为空,这意味着树是空的。
      2. 如果树不为空,则定义一个变量 max,它将存储 temp 的数据。
      3. 通过递归调用 largestElement() 来找出左子树中的最大节点。将该值存储在 leftMax 中。将 max 的值与 leftMax 进行比较,并将两者中的最大值存储在 max 中。
      4. 通过递归调用 largestElement() 来找出右子树中的最大节点。将该值存储在 rightMax 中。将 max 的值与 rightMax 进行比较,并将两者中的最大值存储在 max 中。
      5. 最后,max 将持有二叉树中的最大节点。

解决方案

Python

输出

Largest element in the binary tree: 74

C

输出

Largest element in the binary tree: 74

JAVA

输出

Largest element in the binary tree: 74

C#

输出

Largest element in the binary tree: 74

PHP

输出

Largest element in the binary tree: 74
 
下一个主题程序列表