Un type de données abstrait définit un ensemble de valeurs et les opérations autorisées sur elles, décrites purement par le comportement — non par le code. L'implémentation est la structure concrète (array, linked list, tree) qui réalise ce comportement.
La même TDA, différentes implémentations
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.
