TULISAN : OPERASI DASAR QUEUE DAN DEQUEUE
OPERASI DASAR QUEUE
1. CREATE(antrean) : CREATE(Q) adalah suatu operator untuk membentuk dan menunjukkan suatu antrean hampa Q.
Berarti : NOEL(CREATE(Q)) = 0 FRONT(CREATE(Q)) = tidak terdefinisi REAR(CREATE(Q)) = tidak terdefinisi
2. ISEMPTY(antrean) : ISEMPTY(Q) adalah operator yang menentukan apakah antrean Q
hampa atau tidak. Operand dari operator ini merupakan antrean, sedangkan hasilnya merupakan tipe data boolean.
Di sini : ISEMPTY(antrean) = true, jika Q hampa, yakni jika NOEL(Q)=0 = false, dalam hal lain. Maka, ISEMPTY(CREATE(Q)) = true.
3. INSERT(elemen, antrean) : INSERT(E,Q) adalah operator yang memasukkan elemen E ke dalam antrean Q. Elemen E ditempatkan di bagian belakang dari antrean. Hasil dari operasi ini adalah antrean yang lebih panjang.
REAR(INSERT(E,Q)) = E QNOEL adalah E ISEMPTY(INSERT(E,Q)) = false
4. REMOVE(antrean) : REMOVE(Q) adalah operator yang menghapus elemen bagian depan dari Antrean Q. Hasilnya merupakan antrean yang lebih pendek. Pada setiap operasi ini, harga dari NOEL(Q) berkurang satu, dan elemen kedua dari Q menjadi elemen terdepan.
Jika NOEL(Q) = 0, maka REMOVE(Q) memberikan suatu kondisi error, yakni suatu underflow. Jelas bahwa REMOVE(CREATE(Q)) juga memberikan kondisi underflow error.
DEQUEUE (DOUBLE ENDED QUEUE)
DEQUEUE adalah suatu List Linier, yang
penambahan dan penghapusan elemen-nya dapat dilakukan pada kedua sisi ujung
List, tetapi tidak dapat dilakukan ditengah-tengah list. Dari sini dapat kita
katakan bahwa Dequeue adalah suatu Queue ganda atau Double Ended Queue.
Deque menggunakan dua pointer penunjuk
yaitu :
LEFT : petunjuk
untuk elemen pada posisi kiri
RIGHT : petunjuk untuk
elemen pada posisi kananCONTOH :
Ada dua jenis Dequeue :
1. Input-Restricted-Deque
Adalah deque yang operasi pemasukan elemen datanya hanya dapat dilakukan di satu ujung kanannya (RIGHT), tetapi dapat menghapus dari kedua ujungnya ( LEFT dan RIGHT).
2. Output-Restricted-Deque
Adalah deque yang operasi pemasukan elemen datanya dapat dilakukan melalui kedua ujungnya (LEFT dan RIGHT), tetapi hanya dapat menghapus dari ujung kanannya(RIGHT).
ANTRIAN BERPRIORITAS
Adalah himpunan elemen, yang setiap elemennya telah diberikan sebuah prioritas, dan urutan proses penghapusan elemen adalah berdasarkan aturan berikut :
1. Elemen yang prioritasnya lebih tinggi, diproses lebih dahulu dibandingkan dengan elemen yang prioritasnya lebih rendah.
2. Dua elemen dengan prioritas yang sama, diproses sesuai dengan urutan mereka sewaktu dimasukkan ke dalam priority queue.
BENTUK :
SUMBER :
Materi dari staffsite gunadarma
Komentar
Posting Komentar