Sebuah tipe data abstrak mendefinisikan sekumpulan nilai dan operasi yang diperbolehkan pada mereka, dijelaskan murni oleh perilaku — bukan oleh kode. Implementasi adalah struktur konkret (array, linked list, tree) yang mewujudkan perilaku tersebut.
ADT yang sama, implementasi yang berbeda
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.
Mengapa memisahkannya
python
:
(): ...
(): ...
(): ...
