Rabu, 03 Juni 2015

Queue/Antrian

Queue dengan Array

       Antrian dapat diartikan sebagai suatu kumpulan data yang seolah – olah terlihat seperti ada data yang diletakkan disebelah data yang lain. Bersifat FIFO (First In First Out). Elemen yang pertama masuk ke antrian akan keluar pertama kalinya. 
      Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya
Sehingga membutuhkan 2 variabel: Head dan Tail 



DEKLARASI QUEUE


Operasi-operasi:

Create()
  • Untuk menciptakan dan menginisialisasi Queue
  • Dengan cara membuat Head dan Tail  = -1


IsEmpty()
  • Untuk memeriksa apakah Antrian kosong atau tidak.
  • 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

Fungsi is Full
  • 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


Dua operasi dasar ANTRIAN :

1. Enqueue (tambah)
  • 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

2. Dequeue (ambil)
  • 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

Referensi: Queue, Menjelaskan tentang definisi dan operasi dasar dari queue keterangan , I KOMANG SETIA BUANA, S.Kom.,MT 

Tidak ada komentar:

Posting Komentar