義縣城鄉(xiāng)建設(shè)局網(wǎng)站佛山百度seo點(diǎn)擊軟件
題目描述:給定一個(gè)二叉樹 ,返回其最大深度。root 二叉樹的 最大深度 是指從根節(jié)點(diǎn)到最遠(yuǎn)葉子節(jié)點(diǎn)的最長路徑上的節(jié)點(diǎn)數(shù)。
獲得更多?算法思路:代碼文檔,算法解析的私得。
運(yùn)行效果
完整代碼
/*** 2 * @Author: LJJ* 3 * @Date: 2023/8/15 9:04* 4*/public class MaxDepthBinaryTree {static class TreeNode{int val ;TreeNode left;TreeNode right;TreeNode(int val){this.val = val;}}public int maxDepth(TreeNode root){if (root == null){return 0;}//遞歸計(jì)算左子樹和右子樹的最大深度,并取較大值加一作為當(dāng)前節(jié)點(diǎn)的深度int leftDepth = maxDepth(root.left);int rightDepth = maxDepth(root.right);return Math.max(leftDepth,rightDepth) + 1;}public static void main(String[] args){MaxDepthBinaryTree maxDepthBinaryTree = new MaxDepthBinaryTree();// 構(gòu)造二叉樹TreeNode root = new TreeNode(3);root.left = new TreeNode(9);root.right = new TreeNode(20);root.right.left = new TreeNode(15);root.right.right = new TreeNode(7);// 計(jì)算最大深度int maxDepth = maxDepthBinaryTree.maxDepth(root);System.out.println("二叉樹的最大深度為:" + maxDepth); // 輸出最大深度}
}