二叉树查找最大值:算法原理与 Java 代码实现
二叉树查找最大值的基本思路是从根节点开始,不断遍历右子树,直到找到最右边的叶子节点即可。
具体实现过程:
-
判断根节点是否为空,若为空则返回 null。
-
若根节点不为空,则将根节点的值设为最大值 max。
-
递归遍历右子树,如果右子树不为空,则将右子树的根节点的值与 max 比较,如果大于 max,则更新 max。
-
返回最大值 max。
下面是 Java 代码实现:
public int findMax(TreeNode root) {
if (root == null) {
return null;
}
int max = root.val;
if (root.right != null) {
max = Math.max(max, findMax(root.right));
}
return max;
}
其中 TreeNode 是二叉树节点的类,val 表示节点的值,left 和 right 分别表示左子节点和右子节点。
原文地址: https://www.cveoy.top/t/topic/njvt 著作权归作者所有。请勿转载和采集!