Algoritma - Queue atau Antrian

Antrian atau Queue adalah jenis dari Struktur data dimana alur data yang pertama masuk akan di proses terlebih dahulu atau FIFO.

images

Operasi penambahan ini juga disebut enqueue dimana elemen selalu ditambahkan di akhir antrian. Operasi penghapusan disebut dequeue hanya diizinkan untuk menghapus elemen pertama. Dalam kehidupan sehari-hari antrian bisa di bayangkan seperti antri di depan loket dimana yang pertama antri akan di proses duluan dan selesai duluan.

Perintah Antrian

Dalam Algoritma antrian ada beberapa perintah yang biasa di lakukan :

  • Enqueue adalah perintah untuk menambah elemen di Antrian
  • Dequeue digunakan untuk menghapus elemen dari Antrian
  • isfull digunakan untuk memeriksa apakah antrean sudah penuh.
  • isempty digunakan unruk memeriksa apakah antrian kosong.
  • peek adalah perintah yang digunakan untuk megetahui elemen pertama tanpa penghapusan.

Proses Penambahan

Proses penambahan atau Enqueue selalu di lakukan dari belakang. Pertama-tama anda harus memeriksa apakah struktur data antrian anda masih lowong. Jika benar maka anda mengalokasikan antrian nomer terakhir ke elemen yang anda akan masukkan. Jika antrian penuh maka program anda akan menghasilkan ‘Error’.

proses penambahan(data)      

   jika antrian penuh
      kembali, ada kesalahan (sudah penuh)
   selesai

   nomor_antrian_terakhir = nomor_antrian_terakhir + 1  
   antrian[nomor_antrian_terakhir] = data
   kembali benar

proses selesai

Proses Penghapusan

Proses penghapusan dilakukan dengan memeriksa nomor antrian yang paling awal atau biasa di sebut sebagai “head” atau “front”. Setelah nomor antrian di temukan maka penghapusan elemen bisa dilakukan.

proses penghapusan   

   jika antrian kosong
      kembali, ada kesalahan (antrian kosong)
   selesai

   data = antrian[nomor_antrian_pertama]
   nomor_antrian_pertama = nomor_antrian_pertama + 1
   kembali benar

proses selesai