Explore diversas soluciones LeetCode en Python, C++, JavaScript, SQL y TypeScript. Ideal para preparación de entrevistas, aprendizaje y práctica de código en múltiples lenguajes de programación. Enlace de repositorio de Github
Dado que raíz
de un árbol binario, retorno su profundidad máxima.
Un árbol binario profundidad máxima es el número de nodos a lo largo de la ruta más larga desde el nodo raíz hasta el nodo hoja más lejano.
Ejemplo 1:
Aporte: raíz = [3,9,20,nulo,nulo,15,7] Producción: 3
Ejemplo 2:
Aporte: raíz = [1,nulo,2] Producción: 2
Restricciones:
- El número de nodos en el árbol está en el rango
[0, 10 4 ]
. -100 <= Valor.nodo <= 100
Pitón
# Definición de un nodo de árbol binario. Clase TreeNode #: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = right Solución de clase: def maxDepth(self, root: Optional[TreeNode]) -> int: def longestPath(node: Optional[TreeNode]): if not node: return 0 leftPath = longestPath(node.left) rightPath = longestPath(node.right) return max(leftPath, rightPath)+1 return longestPath(root)