Queue
Adalah suatu bentuk khusus dari linear list
dengan operasi penyisipan (insertion) hanya pada salah satu sisi ( Rear/
belakang) dan operasi penghapusan (deletion) hanya diperbolehkan pada sisi
lainnya (Front/ depan) dari list.
Antrean Q = [ Q1, Q2, Q3,……….., QT]
Front(Q)
= bagian depan dari antrean Q
Rear(Q) = bagian belakang dari antrean Q
Noel(Q) = Jumlah elemen di dalam antrean ( berharga
integer)
Jadi
: Front(Q) = QT
Rear(Q) = Q1
Noel(Q) = T
Antrean beroperasi secara FIFO ( First In First Out) yang pertama masuk, yang pertama keluar.
q
Operasi dasar pada Antrean :
1.
CREATE(Q)
Operator untuk membentuk
suatu antrean hampa
Q = [,…….,]
NOEL(CREATE(Q)) = 0
FRONT(CREATE(Q)) = tidak
didefinisikan
REAR(CREATE(Q)) = tidak
didefinisikan
2.
ISEMPTY(Q)
Operator yang menentukan
apakah antrean Q hampa atau tidak.
Operand dari operator
ISEMPTY adalah antrean.
Hasilnya bertipe data
Boolean
ISEMPTY(Q) =TRUE jika Q adalah antrean hampa (NOEL(Q) = 0)
FALSE jika Q bukan antrean kosong (NOEL(Q) ¹ 0)
3.
INSERT(E,Q)
Operator yang menyisipkan
elemen E ke dalam antrean Q
Catt : Elemen Q ditempatkan pada bagian belakang
antrean dan antrean menjadi lebih panjang
Q = [ A, B, C, D]
REAR(INSERT(E,Q)) = E
FRONT(Q) = A
NOEL(Q) = 5
ISEMPTY(INSERT(E,Q)) =
FALSE
4.
REMOVE(Q)
Operator yang menghapus
elemen bagian depan dari antrean Q dan antrean menjadi lebih pendek
Jika NOEL(Q) = 0 maka
REMOVE(Q) = ERROR (
UNDERFLOW)
Tidak ada komentar:
Posting Komentar