Senin, 15 Juni 2015

Antrian data pada pemrograman



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