GoConqr has a new look! Let us know what you think.

Module 22 of 30 · Text

Greedy Algorithms

Mauricio Sanabria

Características generales:

-Set de candidatos: a tomar en cuenta.
-Set de candidatos considerados: fueron elegidos para la solución.
-Set de candidatos rechazados: fueron rechazados y ya no serán tomados en cuenta.

+Función solución: verifica que los candidatos den una solución al problema. 
+Función factibilidad: verifica si los candidatos son factibles para obtener una solución.
+Función de selección: selecciona de los candidatos aún no seleccionados, cuál es el más prometedor.
+Función objetiva: nos da la solución que hemos encontrado. Esta puede no estar explícitamente en el código.

 

MSTs:

Grafo conexo, pesado y no dirigido.
Debe tener n-1 arcos, n es la cantidad de nodos totales. Esto para que no hayan ciclos.

 

Kruskal:

Algoritmo para MST, que comienza vacío, y va agregando T resultado.

Agrega de forma creciente según el peso, y no le importa los nodos, solo no formar ciclos.

-> 8(a log n). n nodos y a arcos.

 

Prim:

Se inicia de una raíz arbitraria, cada paso agrega un nuevo nodo, hasta que todos los nodos se hayan incluído.

-> 8(n^2)

Es mejor usar Prim que Kruskal cuando a>n^2/log n, a es cantidad de arcos

 

Camino más corto(Dijkstra):

Se selecciona un nodo, y se quiere saber el camino más corto para llegar a todos los otros nodos.

C es nodos candidatos, D es solución (largos).

-> Normal: 8(n^2)

 

Problema de la mochila:

Se busca llenar una mochila con un peso máximo, con objetos con un peso y un valor, se busca el mayo valor respetando ese peso. Se pueden dividir objetos.

->O(n log n)

 

Planificación:

Minimizar tiempo en el sistema:

Un solo servicio, como un mae en un banco, procesador, etc. Tiene n clientes que atender, se sabe cuanto va a durar cada cliente. Se quiere minimizar el tiempo promedio de espera.

El caso óptimo es atender primero a los de menor tiempo primero.  Sólo es necesario ordenar esos tiempos. Los nuevos que lleguen se acomodan al final y se vuelve a poner en orden creciente.

-> solo es ordenar, O(n log n)

 

Planificación con tiempos de entrega:

Tenemos trabajos con valor y tiempo. Se elije una secuencia que se pueda hacer en el tiempo indicado y nos de mayor ganancia.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Instructions

You must submit an attempt for this quiz to progress. You can submit it after the last question.

Go to the chosen module

Feedback

What is it about?

What do you think of the new look?

How do you like it?