Queue
Queue
Queue/Antrian
Tujuan Pembelajaran
D C B A
Masuk Rear
D C B
Rear Front Keluar
D C B A
Rear Front Keluar
FIFO
• Queue
• Metode yang digunakan FIFO
• Menambah data dilakukan di ujung belakang (rear) dan
mengambil/menghapus data di ujung depan (front)
• Contoh : Antrian mobil di Pom Bensin, Antrian di Bank
Prinsip Kerja dan Operasi Antrian
• Proses:
• Tahap pertama: Awal inisialisasi
• Tahap kedua: melakukan Insert
• Tahap ketiga: melakukan Delete
• Tahap keempat: melakukan Reset
• Operasi:
• EnQueue: Menambahkan data dalam antrian
• DeQueue: Mengeluarkan data dari antrian
• Clear: Menghapus antrian
• IsEmpty: Periksa apakah antrian kosong
• IsFull: Periksa apakah antrian penuh
Operasi-operasi pada Antrian
Create()
• Untuk menciptakan dan menginisialisasi Queue
• Dengan cara membuat Head dan Tail = -1
Operasi-operasi pada Antrian
Is Empty()
• Untuk memeriksa apakah Antrian sudah penuh atau belum
• Dengan cara memeriksa nilai Tail, jika Tail = -1 atau 0 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
Operasi-operasi pada Antrian
Is Empty() Prosedur
Operasi-operasi pada Antrian
• IsFull()
• 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
Operasi-operasi pada Antrian
• Enqueue(data)
• 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
Operasi-operasi pada Antrian
• Enqueue(data)
• 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
Operasi-operasi pada Antrian
• Enqueue(data)
• 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
Operasi-operasi pada Antrian
• Dequeue()
• Digunakan untuk menghapus elemen terdepan/pertama dari Antrian
• Dengan cara mengurangi counter Tail dan menggeser semua elemen antrian
kedepan.
• Penggeseran dilakukan dengan menggunakan looping
Operasi-operasi pada Antrian
• 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
Operasi-operasi pada Antrian
• Tampil()
• Untuk menampilkan nilai-nilai elemen Antrian
• Menggunakan looping dari head s/d tail