TAD de los conjuntos - Conjunto unitario
Utilizando el tipo abstracto de datos de los conjuntos definir la función
unitario :: Ord a => a -> Conj a
tal que unitario x
es el conjunto {x}. Por ejemplo,
unitario 5 == {5}
Soluciones
A continuación se muestran las soluciones en Haskell y las soluciones en Python.
Soluciones en Haskell
import TAD.Conjunto (Conj, vacio, inserta) unitario :: Ord a => a -> Conj a unitario x = inserta x vacio
Soluciones en Python
from __future__ import annotations from abc import abstractmethod from typing import Protocol, TypeVar from src.TAD.conjunto import Conj, inserta, vacio class Comparable(Protocol): @abstractmethod def __lt__(self: A, otro: A) -> bool: pass A = TypeVar('A', bound=Comparable) def unitario(x: A) -> Conj[A]: return inserta(x, vacio())