Buatlah resume tentang Bounded Queue dan Circular Bounded Queue dan Algoritma Implementasinya!

Bounded Queue

Bounded Queue adalah queue yang berisi elemen dengan size tertentu.

boolean full()mengembalikan nilai true jika queue penuhsesuaidengan size yang ditentukandan false jika queue belum penuh

Circular Bounded Queue
Cara mensimulasikan antrian secara circular dalam array linear menggunakan arithmetic modular. Arithmetic modular menggunakan ekspresi rumus (X % N)
Untuk menjaga besarnya nilai X pada range 0:N-1. Jika indeks telah sampai pada N dengan penambahan atau pengurangan tersebut, maka indeks akan diset pad angka 0. Hal yang sama juga dilakukan pada Front jika dilakukan pengambilan item dari antrian. Setelah mengambil item dari antrian, kita melakukan increment terhadap Front untuk penunjukan pada posisi sesudahnya. Apabila indeks telah berada pada N, makai ndeks diset juga pada angka 0.
Prinsip Circular Queue adalah FIFO (First In First Out), maksudnya, elemen pertama yang masuk akan keluar pertama juga
Di Circular Queue, F tidak selalu <= R
Setelah R dan F sampai ke n-1, maka tidak direset tetapi melingkar ke 0.
Circular Queue menggunakan fungsi Counter. Counter merupakan jumlah pengantri yang ada dalam antrian.
- Pada proses awal, counter = 0
- Pada proses insert, counter++
- Pada proses delete, counter—
➢ Algoritma untuk implementasi queue menggunakan Array Terdapat beberapa cara dalam merepresentasikan queue, salah satunya menggunakan array. Dalam merepresentasikan queue dengan array, terdapat dua variable yaitu front dan rear yang harus ditetapkan. Variable tersebut yang menunjukkan dari mana posisi enqueue dan dequeue dilakukan dalam queue. Untuk inisiasi, nilai front dari queue adalah -1, yang mana menunjukkan bahwa queue dalam keadaan empty. Dalam mengimplementasikan penggunaan queue pada array, terlebih dahulu membuat sebuiah class untuk merepresentasikan queue tersebut. Dan didalamnya terdapat beberapa variabel seperti front untuk merepresentasikan elemen terdepan dalam suatu queue dan tail untuk merepresentasikan elemen paling akhir dari suatu queue.
➢ Algoritma untuk implementasi queue menggunakan LinkedList Salah satu kelemahan implementasi queue menggunakan array adalah kurang sesuai digunakan dalam skala besar, sehingga alternatif lain adalah menggunakan linked list. Dalam LinkedQueue, setiap node queue terdiri dari dua bagian, yaitu data dan pointer. Setiap node queue menunjuk ke node berikutnya dalam memori. Pada pointer LinkedQueue, terdapat dua pointer yang tersimpan, yaitu pointer front dan pointer rear. Pointer front berisi alamat dari node pertama pada queue, sedangkan pointer rear berisi alamat node terakhir dari queue. Proses enqueue dan dequeue masing-masing dilakukan pada bagian rear dan front. Apabila nilai keduanya NULL, maka LinkedQueue kosong.