3. Árboles y Grafos#

Ejercicio Práctico de Estructuras de Datos: Árbol Binario y Grafo

Instrucciones#

  1. Duración: Tienes un tiempo total de 2 horas para completar el ejercicio.

  2. Implementa cada punto en Java con código funcional y bien organizado.

  3. Crea diagramas o imágenes representativas para ilustrar la estructura del árbol y el grafo. Puedes dibujarlos a mano, usar herramientas como Lucidchart, Draw.io, paint, PowerPoint, o diagramar directamente en el IDE si es posible.

  4. Entrega:

    Una carpeta comprimida con el código fuente y los diagramas. Ejemplo: un proyecto de java, notebook, o clases de java con los diagramas.

Truco

Utilicen los códigos de libro guía, Introduction to Java Programming and Data Structures, Comprehensive Version, 12th Edition, para resolver ambos problemas. Pueden utilizar la guía de árboles y la de grafos.

Primero comiencen por implementar el árbol/grafo con Strings, después actualicen el código para que agreguen objetos auxiliares, es decir, no pasar Strings sino objetos de la clases auxiliar creada. En ambos casos deben hacer los diagramas.

Criterios de Evaluación#

  • Correcta implementación de estructuras de datos:

    • Árbol binrio funcional con las operaciones solicitadas.

    • Grafo sin pesos funcional con las operaciones solicitadas.

  1. Organización del código:

    • Código modular y bien estructurado.

    • Uso adecuado de clases, métodos y comentarios.

  2. Diagramas o imágenes:

    • Claridad y representación adecuada del árbol y el grafo.

  3. Documentación:

    • Comentarios relevantes en el código, de ser necesarios.

  4. Creatividad y atención al detalle:

    • Soluciones completas, con ejemplos claros y escenarios funcionales.

Recomendaciones#

  1. Antes de escribir código, analiza y planea cómo estructurarás las clases para el árbol y el grafo. Define claramente qué atributos y métodos necesitas.

  2. Asegúrate de probar cada operación por separado antes de integrarlas en un flujo completo.

  3. Si te quedas atascado, prioriza completar las funcionalidades básicas antes de las más complejas.

  4. Cuida el tiempo. Dedica una hora a cada punto aproximadamente.


¡Buena suerte!#