Struktur data antrian (queue) merupakan pengembangan dari struktur data list bertaut (linked list). Bagian terkecil dari struktur data antrian adalah sebuah node (yang juga merupakan struktur data) yang menampung dua elemen, yaitu (1) data yang disimpan dan (2) pointer ke node selanjutnya.
Ide implementasinya sebagai berikut.
Pada saat inisialisasi, siapkan tempat yang kita sebut node kepala. Node kepala akan berisi node awal dari antrian yang kita buat.
Pada saat menambahkan node yang berisi data ke dalam antrian (istilahnya enqueue), periksa isi node kepala. Jika masih kosong, tempatkan node tersebut di sana. Jika sudah berisi, lakukan iterasi mulai dari node kepala, node di belakang kepala, node di belakangnya, dan seterusnya sampai menemukan tempat kosong. Letakkan node di tempat kosong tersebut.
Pada saat mengeluarkan node dari dalam antrian (istilahnya dequeue), terlebih dulu periksa isi node kepala. Jika masih kosong, berarti tidak ada data yang akan dikeluarkan. Jika sudah berisi, keluarkan node kepala. Kemudian jadikan node di belakang kepala tadi sebagai node kepala yang baru.
Jika ingin melihat keseluruhan antrian, lakukan iterasi mulai dari node kepala, node di belakang kepala, node di belakangnya, dan seterusnya sampai node yang paling belakang.

Komentar Terkini