Un tipo de dato abstracto define un conjunto de valores y las operaciones permitidas en ellos, descritas puramente por comportamiento — no por código. La implementación es la estructura concreta (array, linked list, tree) que realiza ese comportamiento.
El mismo ADT, diferentes implementaciones
text
ADT "Queue": enqueue, dequeue, peek (FIFO contract)
Implementation A: array + two indices (ring buffer)
Implementation B: doubly linked list with head/tail pointers
Both honor the SAME contract; cost profiles differ.
Por qué separarlos
python
:
(): ...
(): ...
(): ...
