Definisi Queue
Jika diartikan secara harafiah, queue berarti antrian, queue merupakan salah satu contoh
aplikasi dari pembuatan double linked list yang cukup sering kita temui dalam kehiduypan
sehari-hari, misalnya saat Anda mengantri di loket untuk membeli tiket. Istilah yang cukup
sering dipakai seseorang masuk dalam sebuah antrian adalah enqueue. Dalam suatu antrian,
yang dating terlebih dahulu akan dilayani lebih dahulu. Istilah yang sering dipakai bila
seseorang keluar dari antrian adalah dequeue.
PRINSIP KERJA QUEUE
Prinsip kerja Queue adalah FIFO (First In First Out), di mana data yang masuk terlebih
dahulu akan keluar pertama. Dalam antrian tidak semuanya dilakukan secara FIFO murni,
contoh yg relevan dalam bidang komputer adalah Time-sharing Computer System, dimana ada
sejumlah penakai ( user ) yg menggunakan sistem tsb secara serempak. Karena sistem ini
biasanya menggunakan processor, dan sebuah memory utama. Jika processor sedang dipakai
oleh seorang user, maka user yang lain harus antri sampai gilirannya.
Antrian ini tidak akan dilayani secara FIFO murni tetapi biasanya didasarkan pada suatu
prioritas tertentu. Antrian yang memasukkan unsur prioritas dinamakan dengan ANTRIAN
PRIORITAS ( PRIORITY QUEUE )
Implementasi Queue dengan Linear Array
Linear Array
Linear array adalah suatu array yang dibuat seakan-akan merupakan suatu garis lurus
dengan satu pintu masuk dan satu pintu keluar. Berikut ini diberikan deklarasi kelas Queue
Linear sebagai implementasi dari Queue menggunakan linear array. Dalam prakteknya, anda
dapat menggantinya sesuai dengan kebutuhan Anda. Data diakses dengan field data, sedangkan
indeks item pertama dan terakhir disimpan dalam field Head dan Tail. Konstruktor akan
menginisialisasikan nilai Head dan Tail dengan -1 untuk menunjukkan bahwa antrian masih
kosong dan mengalokasikan data sebanyak MAX_QUEUE yang ditunjuk oleh Data. Destruktor
akan mengosongkan antrian kembali dan mendealokasikan memori yang digunakan oleh
antrian.