543. Diameter of Binary Tree 发表于 2022-01-12 12345678910111213141516171819202122class Solution { private static class State { private int maxLength = 0; } public int diameterOfBinaryTree(TreeNode root) { State state = new State(); dfs(root, state); return state.maxLength; } private int dfs(TreeNode root, State state) { if (root == null) { return 0; } int leftHeight = dfs(root.left, state); int rightHeight = dfs(root.right, state); state.maxLength = Math.max(state.maxLength, leftHeight + rightHeight); return Math.max(leftHeight, rightHeight) + 1; }} Reference543. Diameter of Binary Tree