Códigos de los temas
En esta página se encuentran los enlaces a las códigos de los temas del curso.
La relación entre los distintos módulos se muestra en el grafo de dependencias.
Para instalar las librerías basta ejecutar
cabal install I1M
Una vez instaladas, se pueden importar. Por ejemplo, para importar la librería de pilas basta escribir
import I1M.Pila
al inicio del programa.
Los nombres y la documentación de las librerías se encuentran en este enlace.
Tema 14: TAD de las pilas:
- PilaConListas: Implementación de las pilas mediante listas.
- PilaConTipoDeDatoAlgebraico: Implementación de las pilas mediante tipos de datos algebraicos.
- PilaPropiedades: Propiedades del TAD de las pilas.
Tema 15: TAD de las colas:
- ColaConListas: Implementación de las colas mediante listas.
- ColaConDosListas: Implementación de las colas mediante pares de listas.
- ColaPropiedades: Propiedades del TAD de las colas.
Tema 16: TAD de las colas de prioridad:
- ColaDePrioridadConListas: Implementación de las colas de prioridad como listas.
- ColaDePrioridadPropiedades: Propiedades del TAD de las colas de prioridad.
Tema 17: TAD de los conjuntos:
- ConjuntoConListasNoOrdenadasConDuplicados: Implementación de los conjuntos como listas no ordenadas con elementos duplicados.
- ConjuntoConListasNoOrdenadasSinDuplicados: Implementación de los conjuntos como listas no ordenadas sin elementos duplicados.
- ConjuntoConListasOrdenadasSinDuplicados: Implementación de los conjuntos como listas ordenadas sin elementos duplicados.
- ConjuntoPropiedades: Propiedades del TAD de los conjuntos.
Tema 18: TAD de las tablas:
- TablaConFunciones: Implementación de las tablas como funciones.
- TablaConListasDeAsociacion: Implementación de las tablas como listas de asociación.
- TablaConMatrices: Implementación de las tablas como matrices.
- TablaPropiedades: Propiedades del TAD de las tablas.
Tema 19: TAD de los árboles binarios de búsqueda:
- ArbolBin: Implementación de los árboles binarios de búsqueda como tipo de dato algebraico.
- ArbolBinPropiedades: Propiedades del TAD de los árboles binarios de búsqueda.
Tema 20: TAD de los montículos:
- Monticulos: Implementación de los montículos como tipo de dato algebraico.
- MonticuloPropiedades: Propiedades del TAD de los montículos.
- ColaDePrioridadConMonticulos: Implementación de las colas de prioridad mediante montículos.
Tema 21: El TAD de los polinomios:
- PolRepTDA: Implementación de los polinomios mediante tipos de datos algebraicos.
- PolRepDispersa: Implementación de los polinomios mediante listas dispersas.
- PolRepDensa: Implementación de los polinomios mediante listas densas.
- PolOperaciones: Operaciones con el TAD de los polinomios.
- PolPropiedades: Propiedades del TAD de los polinomios.
Tema 22: Algoritmos sobre grafos:
- GrafoConVectorDeAdyacencia: Implementación de los grafos mediante vectores de adyacencia.
- GrafoConMatrizDeAdyacencia: Implementación de los grafos mediante matrices de adyacencia.
- RecorridoEnProfundidad: Recorrido en profundidad.
- RecorridoEnAnchura: Recorrido en anchura.
- AlgoritmoDeKruskal: Algoritmos de Kruskal y de Prim.
Tema 23: Técnicas de diseño descendente de algoritmos:
- Divide y vencerás
- DivideVenceras: El patrón divide y vencerás.
- OrdenacionpormezclamedianteDyV: Ordenación por mezcla.
- OrdenacionrapidamedianteDyV: Ordenación rápida.
- Búsqueda en espacios de estados:
- BusquedaEnEspaciosDeEstados: El patrón de búsqueda en espacios de estados.
- Búsqueda por primero el mejor:
- BusquedaPrimeroElMejor: El patrón de búsqueda por primero el mejor.
- 8puzzle: El 8 puzzle.
- Búsqueda en escalada:
- BusquedaEnEscalada: El patrón de búsqueda en escalada.
- Monedas: El problema del cambio de monedas.
- Primmedianteescalada.hs: El algoritmo de Prim del árbol de expansión mínimo.
Tema 24: Programación dinámica:
- Dinamica: Patrón de la programación dinámica.
- Fibonacci: Fibonacci como ejemplo de programación dinámica.
- ProductoDeCadenaDeMatrices: Producto de cadenas de matrices.
- ArbolBusquedaBinariaOptimal: Árbol de búsqueda binario optimal.
- CaminosMinimos: Caminos mínimos entre todos los pares de nodos de un grafo.
- ProblemaDelViajante: Problema del viajante.