Queue Dengan Array



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()
Untuk menciptakan dan menginisialisasi Queue 
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