DASAR TEORI
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. Walaupun berbeda implementasi,
struktur data queue setidaknya harus memiliki operasi-operasi sebagai berikut :
Create Menciptakan dan Menginisialisasi
Queue dengan cara membuat Head dan Tail = -1
EnQueue Memasukkan
data ke dalam antrian
DeQueue Mengeluarkan
data terdepan dari antrian
Clear Menghapus
seluruh antrian
IsEmpty Memeriksa
apakah antrian kosong
IsFull Memeriksa apakah antrian penuh
Create
Digunakan untuk membentuk dan menunjukan awal
terbentuknya suatu Antrian /
Queue.
IsEmpty
Fungsi IsEmpty berguna untuk mengecek apakah queue masih
kosong atau sudah berisi
data. hal ini dilakukan dengan mengecek apakah tail bernilai
-1 atau tidak. Nilai -1 menandakan bahwa queue masih kosong.
IsFull
Fungsi IsFull berguna untuk mengecek apakah queue sudah
penuh atau masih bisa
menampung data dengan cara mengecek apakah nilai tail sudah
sama dengan jumlah
maksimal queue. Jika nilai keduanya sama, berarti queue
sudah penuh.
EnQueue
Fungsi EnQueue berguna untuk memasukkan sebuah elemen dalam
queue dari belakang
DeQueue
Fungsi DeQueue berguna untuk mengambil sebuah elemen dari
queue. Operasi ini
sering disebut juga serve. Hal ini dilakukan dengan
cara memindahkan sejauh satu
langkah ke posisi di depannya sehingga otomatis elemen yang
paling depan akan
tertimpa dengan
elemen yang terletak di belakangnya.
Clear
Fungsi Clear berguna untuk menghapus semua lemen dalam queue
dengan jalan
mengeluarkan
semua elemen tersebut satu per satu hingga queue kosong dengan
memanfaatkan
fungsi DeQueue.
LISTING PROGAM
Output