Java 查找树的最大深度或高度的程序

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

在此程序中,我们需要找出二叉树的最大高度。二叉树的高度可以定义为根节点到叶节点的节点数。最大高度将是根节点到最深叶节点之间的层数。为了解决这个问题,我们遍历左子树并计算左子树的高度。再次,通过遍历右子树来计算右子树的高度。最大高度将是左子树和右子树高度的最大值。

Java program to find the maximum depth or height of a tree

在上面的二叉树中,

算法

  • 定义 Node 类,该类包含三个属性:data、left 和 right。这里,left 表示节点的左子节点,right 表示节点的右子节点。
  • 创建节点时,数据将传递到节点的 data 属性,left 和 right 都将设置为 null。
  • 定义另一个类,该类有一个 root 属性。
    • Root 表示树的根节点,并将其初始化为 null。

a. findHeight() 将确定二叉树的最大高度

  • 它检查 root 是否为 null,这意味着树是空的。
  • 如果树非空,则遍历左子树以确定左子树的高度并将其值存储在 leftHeight 中。
  • 同样,确定右子树的高度并将其值存储在 rightHeight 中。
  • Maximum 将确定 leftHeight 和 rightHeight 中的较大值,然后为根节点的高度加 1。

程序

输出

Maximum height of given binary tree: 5
下一个主题Java 程序