I1M2015: El TAD de los árboles binarios de búsqueda en Haskell

En la segunda parte de la clase de hoy de Informática de 1º del Grado en Matemáticas hemos estudiado el tipo abstracto de datos de los árboles binarios de búsqueda.

Un árbol binario de búsqueda (ABB) (binary search tree) en inglés) es un árbol binario tal que el valor de cada nodo es mayor que los valores de su subárbol izquierdo y es menor que los valores de su subárbol derecho y, además, ambos subárboles son árboles binarios de búsqueda. Por ejemplo, al almacenar los valores de [2,3,4,5,6,8,9] en un ABB se puede obtener los siguientes ABB:

El objetivo principal de los ABB es reducir el tiempo de acceso a los valores.

El contenido de la clase ha sido el siguiente:

  • la signatura del TAD de los árboles binarios de búsqueda;
  • las propiedades del TAD de los árboles binarios de búsqueda;
  • la implementación, en Haskell, de los árboles binarios de búsqueda mediante tipos de datos algebraicos y
  • la comprobación con QuickCheck de sus propiedades.

Las transparencias usadas en la clase son las del tema 19.

I1M2015: Los diccionarios en Haskell (Data.Map)

En la primera parte de la clase de hoy del curso Informática de 1º del Grado en Matemáticas hemos estudiado el uso de los diccionarios en Haskell.

En primer lugar, se mostraron ejemplos de usos de diccionarios. A continuación se explicó el tipo de los diccionarios, las principales funciones sobre diccionarios. Finalmente se mostraron

I1M2015: 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 26 cuyo objetivo 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.

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