Senin, 11 Maret 2019

Materi Queue

POLITALA 2A


QUEUE (ANTRIAN)
   A.    Definisi Queue (Antrian)
Queuenama   lainnya   adalah   antrean.   Merupakan   sekumpulan   data yang   mengalami penambahan  data (elemen)  melalui  satu  sisi,  yaitu  depan  (head)  dan  penghapusan  data(elemen) melalui sisi belakang (tail). Sifat tersebut biasa disebut dengan FIFO (First In First Out), yaitu data yang pertama masuk akan keluar terlebih dahulu. Dan data yang terakhir masuk akan keluar paling akhir. Elemen  yang  pertama  kali  masuk  ke queue disebut  dengan  elemen  depan  (front/head  of queue),  sedangkan  elemen  yang  terakhir  kali  masuk  ke queue disebut  dengan  elemen belakang (rear/tail of queue). Perhatikan pada ilustrasi gambar 1.

   B.     Perbedaaan Stack dan Queue
Perbedaan  antara stack dan queue terdapat  pada  aturan  penambahan  dan  penghapusan elemen. Pada stack, operasi penambahan dan penghapusan elemen dilakukan di satu tempat atau satu ujung. Sementara pada queue operasi penambahan dapat dilakukan di tempat yang berbeda. Penambahan elemen dilakukan di salah satu ujung, biasa disebut dengan elemen depan, dan ujung lainnya, yang biasa disebut dengan ujung belakang digunakan untuk penghapusan data. Sifat yang demikian biasa dikenal dengan FIFO. Ilustrasi operasi queue seperti pada Gambar 2.

   C.    Pengoperasian Queue
Operasi standard pada queue antara lain:
1.      Membuat queue atau inisialisasi;
2.      Mengecek apakah queue penuh/full;
3.      Mengecek apakah queue kosong/empty
4.      Memasukkan elemen ke dalam queue dan InQueue(Insert Queue);
5.      Menghapus elemen dari queue atau DeQueue (Delete Queue).
Operasi pada queue atau antrean:
1.      Fungsi init()
Digunakan untuk menciptakan queue yang baru atau kosong, yaitu dengan memberi nilai awal (head) dan nilai akhir (tail) dengan -1.;
2.      Fungsi full()
Berguna  untuk  mengecek  apakah  antrean  sudah  penuh  atau  belum.  Dilakukan  dengan  cara mengecek nilai nilai  akhir (tail) apakah sudah sama dengan nilai maksimal dari queue. Jika nilai tail sama dengan nilai maksimal, maka fungsi akan mengembalikan  nilai true dan jika tidak, maka fungsi akan mengembalikan nilai false.
3.      Fungsi empty()
Fungsi ini berguna untuk mengecek apakah queue masih kosong atau sudah terisi data. Proses pengecekan dilakukan dengan memeriksa nilai akhir (tail) apakah bernilai nol atau tidak. Jika tail=-1, makanilai  yang dikembalikan  adalah true,  dan  sebaliknya. Head (kepala  antrean)tidak  perlu  diperiksa  lagi  karena tidak  akan  berubah.  Hal  ini  disebabkan  karena  pergerakan pada queue terjadi di elemen tail.
4.      Fungsi inQueue()
Digunakan untuk memasukkan elemen ke dalam queue. Penambahan queue terjadi di elemen paling akhir. Jika queue belum penuh, maka nilai akhir (tail) akan ditambah 1(increment).
5.      Fungsi deQueue()
Berguna untuk mengambil elemen dari queue, dengan cara memindahkan semua elemen satu langkah ke posisi di depannya. Sehingga elemen yang paling depan akan tertimpa. Pergeseran dilakukan dengan menggunakan perulangan.
6.      Fungsi clear()
Berguna untuk menghapus elemen-elemen queue dengan cara membuat Tail dan Head = -1. Penghapusan  elemen queuesebenarnya  tidak  menghapus  array-nya, tetapi hanya  mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen antrean tidak lagi terbaca.
             
   D.    Contoh program Queue (Antrian)
         1.      Program Queue





         2.      Hasil Listing Queue


Referensi :
https://docplayer.info/69810138-Materi-9-queue-antrean-dosen.html diakses pada tanggal 12 maret 2019 pukul 09.13 wita



Tidak ada komentar:

Posting Komentar

Teknik Hacking Website Sqlmap

Hacking Website Sqlmap A.     Pengertian Hacking Hacking adalah kegiatan memasuki system melalui system operasional lain yang dijal...