POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Profundidad máxima de un árbol binario - Solución en C# LeetCode 104

Profundidad máxima de un árbol binario - Cómo resolverlo en C# (LeetCode 104)

Publicado el 16/08/2025

C# LeetCode 104: Maximum Depth of Binary Tree - Easy

Problema Dado la raíz de un árbol binario, devuelve su profundidad máxima. La profundidad máxima es el número de nodos a lo largo del camino más largo desde la raíz hasta la hoja más lejana.

Enfoque general Se utiliza recursión para explorar todos los caminos desde la raíz hasta las hojas. Cada llamada recursiva calcula la profundidad máxima del subárbol actual y la función combina esos resultados para obtener la profundidad global.

Caso base Si el nodo actual es null hemos pasado una hoja y la profundidad es 0. Ejemplo de condición en código: if (root == null) return 0;

Paso recursivo Para cualquier nodo no nulo la profundidad máxima es 1 por el propio nodo más el mayor entre las profundidades máxima del subárbol izquierdo y derecho. En código: return 1 + Math.Max(MaxDepth(root.left), MaxDepth(root.right));

Explicación con ejemplo Considere un árbol simple con raíz 1, hijos 2 y 3, y 2 con hijos 4 y 5. Calculamos recursivamente: MaxDepth(1) = 1 + max(MaxDepth(2), MaxDepth(3)). MaxDepth(2) = 1 + max(MaxDepth(4), MaxDepth(5)). MaxDepth(4) y MaxDepth(5) retornan 1 porque sus hijos son null. Así MaxDepth(2) = 2, MaxDepth(3) = 1 y finalmente MaxDepth(1) = 3.

Cómo funciona la pila de llamadas Cada llamada recursiva se apila hasta alcanzar null. Al regresar de la llamada se suma 1 por cada nodo para reflejar la inclusión de ese nodo en la profundidad. La pila garantiza que se completa un subárbol antes de combinar resultados y volver al nivel superior.

Por qué los números aumentan Al deshacer la pila de llamadas se añade 1 en cada retorno para contar el nodo actual, por eso la profundidad acumula desde las hojas hacia la raíz.

Ejemplo de implementación en C# public int MaxDepth(TreeNode root) { if (root == null) return 0; return 1 + Math.Max(MaxDepth(root.left), MaxDepth(root.right)); }

Complejidad Tiempo O(n) porque se visita cada nodo una vez. Espacio O(h) por la profundidad de la pila de recursión donde h es la altura del árbol; en el peor caso h = n para un árbol degenerado.

Aplicación práctica y beneficios Este patrón recursivo es útil en muchos problemas de árboles como búsqueda de alturas, verificación de balanceo, y cálculo de rutas. Entender la llamada recursiva y la gestión de la pila ayuda a diseñar soluciones eficientes y correctas.

Sobre Q2BSTUDIO Q2BSTUDIO es una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones tecnológicas avanzadas. Ofrecemos software a medida, aplicaciones a medida y servicios integrales en inteligencia artificial, incluyendo ia para empresas, agentes IA y soluciones personalizadas de automatización. Además proporcionamos servicios de ciberseguridad para proteger tus sistemas y datos, servicios cloud aws y azure para desplegar y escalar aplicaciones, y servicios inteligencia de negocio con Power BI para convertir datos en decisiones accionables. Nuestro equipo combina experiencia en desarrollo, inteligencia artificial y ciberseguridad para entregar proyectos robustos y orientados a resultados.

Palabras clave aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

Contacto Si buscas implementar algoritmos eficientes, desarrollar aplicaciones a medida, integrar inteligencia artificial o mejorar la seguridad y gobernanza en la nube, Q2BSTUDIO puede ayudarte a diseñar y desplegar la solución adecuada para tu negocio.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio