Queue
Queue
Definisi
Queue = antrian
Data yang pertama masuk dalam antrian, akan
keluar terlebih dahulu.
Jenis-jenis Queue :
Linear Queue
Double Ended Queue (Dequeue)
9
3
Keterangan :
F = Front (depan)
R = Rear (belakang)
F menunjuk pengantri paling depan, yaitu pengantri yg
siap dilayani.
R menunjuk pengantri paling belakang, yaitu pengantri yg
paling terakhir masuk.
Proses :
a.
b.
c.
d.
AWAL (Inisialisasi)
INSERT (Sisip, Masuk, Simpan, Tulis)
DELETE (Hapus, Keluar, Ambil/Dilayani, Baca)
RESET (Kembali ke AWAL)
KOSONG
PENUH
BISA DIISI
ADA ISINYA
PERLU DIRESET
Ciri
F = R + 1 dimana saja
R=n1
R<n1
F<R+1
F = R + 1 dan R = n - 1
if ( R < n 1)
{
R = R + 1;
Q[R] = x;
}
else
cout<<Antrian Penuh;
Delete Kiri
9 Insert Kanan
Delete Kanan
L
Keterangan :
L = Left (kiri)
R = Right (kanan)
L menunjuk pengantri yg terakhir masuk di sebelah kiri
dan siap dilayani.
R menunjuk pengantri yg terakhir masuk di sebelah
kanan dan siap dilayani.
Kondisi Deque
Kondisi Antrian
a.
b.
c.
d.
e.
f.
KOSONG
PENUH KIRI
PENUH KANAN
BISA DIISI DARI KIRI
BISA DIISI DARI KANAN
ADA ISINYA
Ciri
L = R + 1 dimana saja
L=0
R=n1
L >0
R<n1
L <R+1
{
L = L - 1;
Q[L] = x;
}
else
cout<<Antrian Kiri Penuh;
}
{
R = R + 1;
Q[R] = x;
}
else
cout<<Antrian Kanan Penuh;
}
{
x = Q[L];
L = L + 1;
}
else
cout<<Antrian Kosong;
}
{
x = Q[R];
R = R - 1;
}
else
cout<<Antrian Kosong;
}