Capítulo 1 |
Algunos problemas representativos |
- Problema del emparejamiento estable;
- Calendarización de intervalos;
- Emparejamiento bipartito;
- Conjunto independiente, y
- Locación competitiva.
|
Capítulo 2 |
Fundamentos de análisis de algoritmos |
- Trazabilidad computacional;
- Orden de crecimiento asintótico;
- Problema del emparejamiento estable con listas y arreglos;
- Evaluación de tiempos de ejecución típicos, y
- Colas de prioridades.
|
Capítulo 3 |
Grafos
|
- Definiciones y aplicaciones;
- Conectividad y búsqueda;
- Implementando grafos en colas y pilas;
- Conectividad en grafos dirigidos, y
- Grafos acíclicos dirigidos y ordenamiento topológico.
|
Capítulo 4 |
Algoritmos voraces |
- Calendarización de intervalos;
- Calendarización para minimizar atrasos;
- Caché óptimo;
- Camino más corto;
- Algoritmo de Kruskal;
- Clustering, y
- Compresión de la información.
|
Capítulo 5 |
División y conquista |
- Algoritmo de ordenamiento por mezcla (merge sort);
- Relaciones de recurrencia;
- Conteo de inversiones;
- Encontrar los puntos más cercanos;
- Multiplicación de enteros, y
- Convoluciones y la transformada rápida de Fourier.
|
Capítulo 6 |
Programación Dinámica |
- Calendarización ponderada de intervalos;
- Principios de programación dinámica;
- Mínimos cuadrados segmentados;
- Programación dinámica en intervalos;
- Alineamiento de secuencias;
- Alineamiento de secuencias en espacios lineales usando división y conquista;
- Caminos más cortos en un grafo;
- Caminos más cortos y protocolos vector-distancia, y
- Ciclos negativos en un grafo.
|