Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Actividad 4 algoritmos, Ejercicios de Estructuras de Datos y Algoritmos

Actividad 4 segunda unidad de algoritmos

Tipo: Ejercicios

2020/2021

Subido el 02/02/2022

mercedes-haro
mercedes-haro 🇲🇽

4 documentos

1 / 5

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Objetivo:
Realizar una corrida a mano, a partir de un algoritmo dado, realiza la coloración del árbol
proporcionado.
Instrucciones:
Resuelve el siguiente problema: La figura muestra un mapa con 4 distritos A, B, C y D. Se
trata de pintar cada distrito con un color de forma que, dos regiones con un borde común
(que no sea un punto) tengan distintos colores y queremos hacer esto usando un mínimo
de colores.
1. Encuentra una representación en términos de vértices y aristas de un grafo a partir
del mapa dado.
• Vértices:
• Representación:
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Actividad 4 algoritmos y más Ejercicios en PDF de Estructuras de Datos y Algoritmos solo en Docsity!

Objetivo: Realizar una corrida a mano, a partir de un algoritmo dado, realiza la coloración del árbol proporcionado. Instrucciones: Resuelve el siguiente problema: La figura muestra un mapa con 4 distritos A, B, C y D. Se trata de pintar cada distrito con un color de forma que, dos regiones con un borde común (que no sea un punto) tengan distintos colores y queremos hacer esto usando un mínimo de colores.

  1. Encuentra una representación en términos de vértices y aristas de un grafo a partir del mapa dado.
  • Vértices:
  • Representación:
  • El resultado es un grafo plano no dirigido, en el que sus vértices están unidos por las aristas de la siguiente manera: Grafo:{(A,B)(A,C)(A,D)(B,C)(B,D)(C,D)}
    1. Investiga un algoritmo que aplicado a grafos te permita ir coloreando los vértices de tal forma que no coincidan en color, con el color de los vértices que estén unidos a ellos a través de aristas.
  • El algoritmo a utilizar es el voraz (Greedy). Los algoritmos voraces (Greedy) se utilizan típicamente para resolver problemas de optimización:
  • Minimizar o maximizar, bajo determinadas condiciones, el valor de una función del tipo: f(x1, x2, …,xn) = c1x1 + c2x2 +…+ cnxn. La solución se va construyendo en etapas:
  • En cada etapa se añade un nuevo elemento a la solución parcial. El que nos parece el mejor candidato en ese momento.
  • Las decisiones tomadas nunca se revisan. Voracidad: se consume el mejor elemento lo antes posible.
  • Al final de cada etapa se verifica si la solución parcial ya constituye una solución total para el problema. Colorear grafo El algoritmo voraz comienza la coloración de los vértices según orden de éstos en la matriz de adyacencias del grafo. La coloración se realiza siguiendo los siguientes pasos.
  • Paso inicial. Ordenamos los vértices del grafo. (el resultado del algoritmo dependerá del orden elegido). Esto es, disponemos los vértices del grafo en una lista (v1, v2,... , vn). Ahora asignaremos colores a los vértices siguiendo el orden elegido.

3.1. Al vértice A, le asignamos el color 1. 3.2. Como el vértice B está unido con una arista a A no podemos utilizar el color a, así que le asignamos otro color; color 2. 3.3. Ahora colorearemos el vértice C, y ya que este está conectado tanto con el vértice A y el vértice B, le asignamos otro color: color 3. Los colores se verifican del primero al último que se asignó. 3.4. Por último, tenemos el vértice D, verificamos si se le puede asignar el color 1, 2 o 3, pero al estar conectado por aristas a cada uno de ellos, se le asigna un nuevo color; color

Aquí podemos observar que queda como resultado un grafo de 4 colores, 1 para cada vértice.

Fuentes J. Campos - C.P.S. Esquemas algorítmicos - Algoritmos voraces Pág. 97 J.Petit, S.Roura y A.Atserias Web de ADA, http://www.lsi.upc.edu/~ada