Pengertian antrian(Queue)

Pengertian antrian(Queue)

QUEUE adalah suatu kumpulan data yang mana penambahan data / elemen hanya dapat dilakukan pada sisi belakang sedangkan penghapusan / pengeluaran elemen dilakukan pada sisi depan atau suatu linier list dimana operasi delete terjadi pada sisi depan (front) dan operasi insert terjadi pada sisi belakang (rear)Antrean Q=[Q1, Q2, ….., QN]Front (Q)=Q1 -> bagian depan antrian Rear (Q)=QN -> bagian belakang antrean Noel (Q)=N -> jumlah elemen dalam antrian. Queue atau antrian sebenarnya juga merupakan suatu list.
Jenis struktur data antrian sering digunakan untuk menstimulasikan keadaan dunia nyata. Antrian banyak dijumpai dalam kehidupan sehari-hari. Misal : antrian registrasi mahasiswa, tiket kereta api dan lain-lain.

Dalam antrian tidak semuanya dilakukan secara FIFO murni, contoh yg relevan dalam bidang komputer adalah Time-sharing Computer System, dimana ada sejumlah penakai ( user ) yg menggunakan sistem tsb secara serempak. Karena sistem ini biasanya menggunakan processor, dan sebuah memory utama. Jika processor sedang dipakai oleh seorang user, maka user yang lain harus antri sampai gilirannya.
Antrian ini tidak akan dilayani secara FIFO murni tetapi biasanya didasarkan pada suatu prioritas tertentu. Antrian yang memasukkan unsur prioritas dinamakan dengan ANTRIAN PRIORITAS ( PRIORITY QUEUE )

Elemen yang pertama kali 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 variabel Head dan Tail.


Deklarasi dalam Queue:

Operasi dalam Queue:
   1.    Create:


            Untuk menciptakan dan menginisialisasi Queue
            Dengan cara membuat Head dan Tail =-1


2.   IsEmpty ( )


      a.       Untuk memeriksa apakah Antrian sudah penuh atau belum
      b.      Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty
      c.      Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian         (elemen pertama dalam antrian) yang tidak akan berubah-ubah
      d.      Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian                  kebelakang, yaitu menggunakan nilai Tail

3.      IsFull


       a.       Untuk mengecek apakah Antrian sudah penuh atau belum
       b.      Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1                     adalah batas elemen array pada C) berarti sudah penuh 



         4.      Enqueue (data)


       a.       Untuk menambahkan elemen ke dalam antrian, penambahan elemen                   selalu ditambahkan di elemen paling belakang.
       b.      Penambahan elemen selalu menggerakan variabel Tail dengan cara                    increment counter Tail



          5.      Dequeue()


        a.       Digunakan untuk menghapus elemen terdepan/pertama dari antrian
        b.       Dengan cara mengurangi counter Tail dan menggeser semua elemen                  antrian kedepan.
        c.       Penggeseran dilakukan dengan menggunakan looping



          6.      Clear()


        a.      Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan            Head = -1
        b.       Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus                        arraynya, namun hanya mengeset indeks pengaksesan-nya 



           7.      Tampil


         a.       Untuk menampilkan nilai-nilai elemen antrian
         b.      Menggunakan looping dari head s/d tail










Sumber:
http://slideplayer.info/slide/3272808/
http://risasisteminformasi.blogspot.co.id/2013/02/tes.html







Post a Comment

0 Comments