I1M2013: Combinatoria en Haskell

En la clase de hoy de Informática de 1º del Grado en Matemáticas se han explicado las soluciones de los ejercicios de la relación 21.

El objetivo de esta relación es estudiar la generación y el número de las principales operaciones de la combinatoria. En concreto, se estudia

  • Permutaciones.
  • Combinaciones sin repetición..
  • Combinaciones con repetición
  • Variaciones sin repetición.
  • Variaciones con repetición.

Además, se estudia dos temas relacionados:

  • Reconocimiento y generación de subconjuntos y
  • El triángulo de Pascal

Los ejercicios, y sus soluciones, se muestran a continuación.
Read More “I1M2013: Combinatoria en Haskell”

I1M2013: El TAD de los polinomios en Haskell

En la clase de hoy de Informática de 1º del Grado en Matemáticas hemos estudiado el tipo abstracto de los polinomios y su implementación en Haskell.

Comenzamos la clase analizando las posibles representaciones de los polinomios y, como consecuencia, establecer la signatura y las propiedades del TAD de los polinomios.

A continuación, estudiamos tres prosibles representaciones del TAD de los polinomios: mediante tipos algebraicos, mediantes listas dispersas y mediante listas densas.

Finalmente, estudiamos la implementación de los polinomios como tipo algebraico y mediantes listas dispersas.

Las transparencias usadas en la clase son las páginas 1-41 del tema 21
Read More “I1M2013: El TAD de los polinomios en Haskell”

I1M2013: Ejercicios de árboles binarios en Haskell

<

p>En la segunda parte de la clase de hoy de Informática de 1º del Grado en Matemáticas hemos comentando soluciones de los ejercicios de la relación 19 sobre árboles binarios. En concreto, se definen funciones para calcular:

  • el número de hojas de un árbol,
  • el número de nodos de un árbol,
  • la profundidad de un árbol,
  • el recorrido preorden de un árbol,
  • el recorrido postorden de un árbol,
  • el recorrido preorden de forma iterativa,
  • la imagen especular de un árbol,
  • el subárbol de profundidad dada,
  • el árbol infinito generado con un elemento y
  • el árbol de profundidad dada cuyos nodos son iguales a un elemento.

<

p>Los ejercicios y sus soluciones se muestran a continuación
Read More “I1M2013: Ejercicios de árboles binarios en Haskell”