力扣543二叉树的直径(深度优先搜索法(递归)) 543. 二叉树的直径 - 力扣LeetCode二叉树的直径是指树中任意两个节点之间最长路径的长度。这条路径可能经过也可能不经过根节点root。即求路径经过节点数最大值 - 1假设我们已知某节点左儿子向下遍历经过最多节点数L、右儿子向下遍历经过最多节点数R则以该节点为起点的节点数最大值为L R 1定义一个递归函数depth(node)函数返回该节点为根的子树的深度,计算过程中会顺带计算最大节点数class Solution { int ans; public int diameterOfBinaryTree(TreeNode root) { ans 1; depth(root); return ans -1; } int depth(TreeNode node){ if(node null) return 0; int L depth(node.left); int R depth(node.right); ans Math.max(ans,LR1); return Math.max(L,R) 1; } }