Daftar Isi :

  1. Cara KERJA QUEUE ENQUEUE DAN DEQUEUE DALAM STRUKTUR DATA LENGKAP SOURCE CODEnYA
  2. Contoh KONSEP QUEUE DALAM STRUKTUR DATA
  3. CONTOH Variabel YANG DIPERLUKAN DALAM MEMBUAT QUEUE DALAM STRUKTUR DATA
  4. KONSEP PROSES QUEUE DALAM STRUKTUR DATA
  5. Contoh DEKLARASI VARIABEL QUEUE DALAM BAHASA PEMROGRAMAN CPP
  6. CONTOH MODEL DAN FUNGSI ISEMPTY DALAM PROSES QUEUE DI STRUKTUR DATA
  7. CONTOH MODEL DAN FUNGSI ISFULL DALAM PROSES QUEUE DI STRUKTUR DATA
  8. CONTOH MODEL DAN FUNGSI enqueue DALAM PROSES QUEUE DI STRUKTUR DATA
  9. GAMBAR MODEL DAN FUNGSI DEqueue DALAM PROSES QUEUE DI STRUKTUR DATA
  10. GAMBAR MODEL DAN FUNGSI clear DALAM PROSES QUEUE DI STRUKTUR DATA
  11. FUNGSI TAMPIL DALAM PROSES QUEUE DI STRUKTUR DATA
  12. Full Source Code Konsep QUEUE pada Pemrograman CPP

Queue dalam Struktur Data disebut Sebagai Antraian yang dapat diartikan sebagai suatu kumpulan data yang seolah – olah terlihat seperti ada data yang dieltakkan disebelah data yang lain. Jadi Queue dalam Struktur Data biasanya datanya bersifat FIFO ( First In First Out ), Jadi Elemen data yang pertama masuk ke antrian ( Queue ) maka datanya akan keluar pertama juga. Selain Queue dalam Struktur Data ada juga ada istilah Dequeue. Dequeue adalah proses mengeluarkan satu elemen data dari suatu antraian. Berikut Ilustrasi Gambar Konsep Queue dalam Struktur data :

Bisa dilihat Dari Ilustrasi gambar tersebut dalam dunianyata Untuk memasukin Sebuah Loket Tentu anda harus mengantrai. Jadi Jika Seseorang mendapatkan Antraian no 1 maka secara otomatis seseorang tersebutlah yang boleh masuk terlebih dahulu bukan no antraian no 2 ataupun 4. Itulah yang disebut Konsep FIFO. Selain itu ada beberapa Contoh – Contoh penerapan Konsep Queue ( Antraian ) dalam dunia nyata seperti berikut :

1.      Penjualan karcis kereta, bioskop

2.      Penjadualan pencetakan (spooling system)

3.      Penjadualan pemakaian CPU

4.      Penyimpan barang di Apotek


Dalam Struktur Data Konsep Queue ada prosesnya yaitu seperti terdapat satu buah pintu masuk di suatu ujung dan satu biah pintu keluar diujung satunya. Maka dalam hal itu memerlukan 2 variabel yaitu Head dan Tail seperti gambar berikut :
Jika dimodelkan Ilustrasi Proses Konsep Queue Dalam Struktur Data maka digambarkan seperti berikut :

Jadi Dari 3 Gambar Proses diatas merupakan Proses Queue pada Saat Kosong , Pemberian 1 Elemn dan Juga 4 Elemen. Dari Gambar diatas juga terlihat Head -1 pada Saat Kosong dan pada Saat pengisian 1 elemen. Maka Nilai Head menjadi 0. Kemudian jika diisi elemen Lain maka Nilai Tailnya yang terupdate.

Adapun operasi – Operasi Queue dalam Struktur Data yaitu :

1.      Create()
2.      IsEmpty()
3.      IsFull()
4.      Enqueue ( tambah )
5.      Dequeue ( ambil )
6.      Clear()
7.      Tampil()

1. Create()

Pada Operasi ini berguna untuk menciptakan dan mengisilaisasi Queue daan juga perlu diatur nilai Head dan Tail menjadi -1. Berikut Deklarasi Queue dalam bahasa C++:

ISEmpty()

Operasi IsEmpty dalam Konsep Queue di Struktur data untuk memeriksa apakah Antrain Kosong Atau tidak yang dimana cara memeriksanya dengan mengecek nilai Tail. Jika Tail = -1 maka dianggap Kosong / Empty. Jadi Sistem Tidak perlu memeriksa Head karena head adalah tanda untuk kepala antraian ( elemen pertama dalam antraian ) yang tidak akan berubah – ubah. Pada Queue dalam Struktur Data pergerakan nilai Tail terjadi dengan adanya penambahan antrian kebelakangnya. Jika Digambarkan IsEmpty dan Algoritmanya dalam bahasa C++ seperti berikut :

IsFull()

IsFull merupakan Operasi Queue dalam Struktur Data untuk mengecek apakah antrian sudah penuh atau belum. Proses pengecekan IsFull yaitu dengan cara mengecek nilai Tail. Apabila Tail >= MAX-1 ( karena MAX -1 adalah batas elemen array pada C ) dianggap sudah penuh. Berikut Gambaran IsFull dan Algoritma dalam Bahasa C++ 

Enqueue 

Enqueue merupakan Proses Queue dalam Struktur data untuk menambahkan elemen ke dalam antrian, penambahan elemen selalu ditambahkan di elemen paling belakang

Dalam proses Penambahan elemen selalu menggerakkan / mengupdate variabel Tail dengan cara Increment Counter Tail Terlebih dahulu.

Berikut Gambaran Enqueue dan Algoritma dalam Bahasa C++

Dqueue()

Dequeue merupakan Proses Queue dalam Struktur Data yang berfungsi untuk menghapus elemen terdepan / pertama ( head ) dari antrian. Yang dimana dengan cara menggese semua elemen antrian kedepan dan mengurangi Tail dengan 1. Biasanya pergerseran dilakukan dengan menggunakan looping. Berikut Gambaran Dequeue() dan Algoritma Dequeue() dalam bahasa C++

Clear()

Operasi Clear() dalam Struktur Data berguna untuk menghapus elemen – elemen antrian dengan cara membuat Tail dan Head = -1. Penghapusan elemen – elemen antrian sebenarnya tidak menghapus arranya namu hanya mengeset Index pengaksesannya ke nilai -1 sehingga elemen – elemen antrian tidak lagi terbaca. Berikut Gambaran Konsep Queue dan Algoritma dalam Bahasa C++ seperti berikut :

Tampil()

Operasi Tampil() dalam Struktur Data berguna untuk menampilkan nilai – nilai elemen antrian. Dan Proses Ini menggunakan Looping dari Head sampai Tail. Berikut Algoritma Operasi Tampil dalam Bahasa C++ seperti berikut :

Dan Untuk Full Source Code Konsep Queue dalam Bahasa C++ seperti berikut :

Demikian Mengenai Pengenalan Konsep Queue dalam Struktur data Semoga bermanfaat

Referensi :

  1. Antony Pranata, Pemrograman Borland C++, Andi Offset, Yogyakarta
  2. Moh. Sjukani, Algoritma dan Struktur data dengan C, C++, dan Java, Mitra Wacana Media , 2005
  3. Walter Savitch , Problem Solving With C++: The Object of Programming, forth edition,  Addison  Wesley
  4. Lamhot  Sitorus  &  David  J.M.  Sembiring,  Konsep   dan  Implementasi  Struktur  Data dengan C++, Andi Offset, Yogyakarta
  5. Online Reading, www://cplusplus.com