Apa itu Queue?
- Bersifat FIFO (First In First Out)
- Elemen yang pertama masuk ke antrian akan keluar pertama kalinya
- DEQUEUE adalah mengeluarkan satu elemen dari suatu Antrian
- Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya
- Sehingga membutuhkan 2 variabel: Head dan Tail
Apa
saja operasi-operasi pada Queue?
- Create()
Dengan cara membuat Head dan Tail = -1
- IsEmpty()
Untuk memeriksa
apakah Antrian sudah penuh atau belum
Dengan cara
memeriksa nilai Tail, jika Tail = -1 maka empty
Kita tidak
memeriksa Head, karena Head adalah tanda untuk kepala antrian (elemen pertama
dalam antrian) yang tidak akan berubah-ubah
Pergerakan pada
Antrian terjadi dengan penambahan elemen Antrian kebelakang, yaitu menggunakan
nilai Tail
- IsFull
Untuk mengecek
apakah Antrian sudah penuh atau belum
Dengan cara
mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas elemen
array pada C) berarti sudah penuh
- Enqueue()
Untuk menambahkan
elemen ke dalam Antrian, penambahan elemen selalu ditambahkan di elemen paling belakang
Penambahan elemen
selalu menggerakan variabel Tail dengan cara increment counter Tail terlebih
dahulu
- Dequeue()
Digunakan untuk
menghapus elemen terdepan/pertama (head) dari Antrian
Dengan cara
menggeser semua elemen antrian kedepan dan mengurangi Tail dgn 1
Penggeseran
dilakukan dengan menggunakan looping
- Clear()
Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head = -1
Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen Antrian tidak lagi terbaca
- Tampil()
Untuk menampilkan nilai-nilai elemen Antrian
Menggunakan looping dari head s/d tail
Comments
Post a Comment