function diameterOfBinaryTree(root: TreeNode | null): number {
let maxDiameter = 0
function dfs(node: TreeNode | null) {
if(!node) return 0
const leftHeight = dfs(node.left)
const rightHeight = dfs(node.right)
maxDiameter = Math.max(maxDiameter, leftHeight + rightHeight)
return Math.max(leftHeight, rightHeight) + 1
}
dfs(root)
return maxDiameter
};