TAD de las colas: Alguno de los elementos verifican una propiedad

Utilizando el tipo abstracto de datos de las colas, definir la función

tal que algunoVerifica p c se verifica si alguno de los elementos de la cola c cumplen la propiedad p. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de las colas: Todos los elementos verifican una propiedad

Utilizando el tipo abstracto de datos de las colas, definir la función

tal que todosVerifican p c se verifica si todos los elementos de la cola c cumplen la propiedad p. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de las colas: Longitud de una cola

Utilizando el tipo abstracto de datos de las colas, definir la función

tal que longitudCola c es el número de elementos de la cola c. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de las colas: Último elemento

Utilizando el tipo abstracto de datos de las colas, definir la función

tal que ultimoCola c es el último elemento de la cola c. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de las colas: Transformaciones entre colas y listas

Utilizando el tipo abstracto de datos de las colas, definir las funciones

tales que

  • listaAcola xs es la cola formada por los elementos de xs. Por ejemplo,

  • colaAlista c es la lista formada por los elementos de la cola c. Por ejemplo,

Comprobar con QuickCheck que ambas funciones son inversa; es decir,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python