Está en la página 1de 3

Actividad Teorico/Practica con

Grafos.
Elaborado por:
Lcdo. Diego Medardo Saavedra García, Mgtr.
Profesor Ocasional de la Universidad de las Fuerzas Armadas ESPE
Departamento de Ciencias de la Computación.

Objetivo: El objetivo de esta actividad teórico-práctica es brindar una comprensión sólida


de los conceptos fundamentales de los grafos, así como explorar las operaciones básicas
que se pueden realizar en ellos utilizando el lenguaje de programación R. A través de una
combinación de preguntas teóricas y ejercicios prácticos, podrás adquirir conocimientos
prácticos sobre la representación de grafos, sus operaciones y el uso de la librería igraph en
R.

Parte 1.
Instrucciones:

1. Actividad de consulta: Grafos - Representación de grafos


a. ¿Qué es un grafo y cuáles son sus componentes básicos?
b. ¿Cuáles son las formas comunes de representar un grafo en la teoría de
grafos?
c. Describe brevemente cada una de las siguientes representaciones de grafos:
i. Matriz de adyacencia:
ii. Lista de adyacencia:
d. ¿Cuáles son las ventajas y desventajas de cada una de estas
representaciones?
2. Actividad de consulta: Grafos - Operaciones básicas en un grafo
a. ¿Cuáles son las operaciones básicas que se pueden realizar en un grafo?
b. Describe cada una de las siguientes operaciones:
c. ¿Cuál es la complejidad temporal de cada una de estas operaciones?
3. Actividad de consulta: Grafos - Algoritmo de Dijkstra
a. ¿En qué consiste el algoritmo de Dijkstra y cuál es su objetivo?
b. Describe paso a paso el proceso de ejecución del algoritmo de Dijkstra.
c. ¿Cuál es la complejidad temporal del algoritmo de Dijkstra?
d. ¿En qué tipo de grafos se puede aplicar el algoritmo de Dijkstra?
4. Actividad de consulta: Grafos - Algoritmo de recorrido en profundidad (DFS)
a. ¿En qué consiste el algoritmo de recorrido en profundidad (DFS) y cuál es su
objetivo?
b. Describe paso a paso el proceso de ejecución del algoritmo de DFS.
c. ¿Cuál es la complejidad temporal del algoritmo de DFS?
d. ¿En qué tipo de grafos se puede aplicar el algoritmo de DFS?
Resultados esperados: Al finalizar esta actividad teórico-práctica, se espera que hayas
adquirido conocimientos sólidos sobre los grafos, su representación, las operaciones
básicas que se pueden realizar en ellos, el algoritmo de Dijkstra y los grafos bipartidos.
Además, deberás haber demostrado la capacidad de implementar estas operaciones y
algoritmos utilizando la librería igraph en R.

Parte 2
Por favor desarrolla estos ejercicios:

1. Crea un grafo vacío.

2. Inserta los vértices A, B, C y D en el grafo.

3. Elimina el vértice C del grafo.

4. Inserta una arista entre los vértices A y B.

5. Elimina la arista entre los vértices A y B.

6. Inserta aristas entre todos los pares de vértices en el grafo.

7. Elimina todas las aristas del grafo.

8. Inserta los vértices 1, 2, 3 y 4 en el grafo.

9. Inserta una arista entre los vértices 1 y 2.

10. Inserta una arista entre los vértices 2 y 3.

11. Inserta una arista entre los vértices 3 y 4.

12. Elimina el vértice 3 del grafo.

13. Inserta una arista entre los vértices 1 y 4.

14. Inserta una arista entre los vértices 2 y 4.

15. Elimina todas las aristas del grafo.

16. Inserta los vértices A, B, C y D en el grafo.

17. Inserta una arista dirigida desde el vértice A al vértice B.

18. Inserta una arista dirigida desde el vértice B al vértice C.

19. Inserta una arista dirigida desde el vértice C al vértice D.

20. Elimina todas las aristas del grafo.


Recuerda utilizar las funciones add.vertices(), delete.vertices(), add.edges() y delete.edges()
de la librería igraph para realizar estas operaciones. Puedes combinar diferentes
operaciones para realizar ejercicios más complejos y variados.

También podría gustarte