Istilah “queue” pertama kali dikemukanan pada tahun 1945 oleh seorang ilmuan matematikan dan juga ahli komputer yang bernama John von Neumann, Ia merupakan salah satu pionir dalam bidang komputer. Queue digunakan untuk menggambarkan struktur data yang memiliki aturan antrian (queue), di mana item yang ditambahkan pertama akan diambil pertama pula.
Queue sering disebut juga sistem data antri yang merupakan sebuah struktur data yang berfungsi sebagai antrian, artinya elemen-elemen yang ditambahkan ke dalam Queue akan ditambahkan pada ujung belakang (rear) dan elemen yang diambil dari Queue akan diambil dari ujung depan (head). Ini disebut juga FIFO (first-in, first-out) karena elemen yang pertama kali masuk ke dalam Queue akan menjadi yang pertama kali keluar.
Struktur data queue telah lama digunakan dalam bidang komputer, dan merupakan salah satu struktur data dasar yang sering digunakan dalam pemrograman. Ia banyak digunakan dalam sistem operasi untuk mengelola proses yang sedang menunggu untuk dijalankan, serta dalam aplikasi lainnya untuk mengelola data yang harus diproses secara bergantian.
Contoh nyata penggunaan Queue adalah dalam sistem antrian pada bank atau kantor pos dan tempat pelayanan umum lainnya, di mana orang yang datang pertama akan menjadi yang pertama dilayani. Queue juga dapat digunakan dalam sistem penjadwalan prosesor atau sistem operasi, di mana proses yang ditambahkan pertama akan menjadi yang pertama diproses.
Ada 2 jenis data Queue secara mendasar yaitu:
Dari kedua jenis Queue di atas dapat dibedakan lagi menjadi Queue biasa (regular queue) dan Queue prioritas (priority queue), tergantung pada cara elemen ditambahkan dan diambil dari Queue. Queue biasa mengikuti prinsip FIFO (first-in, first-out), sedangkan Queue prioritas mengikuti prinsip yang berbeda dimana elemen yang memiliki prioritas lebih tinggi akan keluar lebih dulu.
Untuk menggunakan Queue (antrian) dalam sebuah program, pertama perlu memutuskan bagaimana Anda ingin mengimplementasikannya. Untuk menggunakan queue (antrian) dalam sebuah program, pertama-tama Anda perlu memutuskan bagaimana Anda ingin mengimplementasikannya.
Ada beberapa pilihan yang dapat Anda pertimbangkan:
1). Menggunakan struktur data queue yang sudah tersedia di bahasa pemrograman yang Anda gunakan. Misalnya, jika Anda menggunakan seperti Python, Anda dapat menggunakan module queue yang sudah tersedia di dalam standard library. Contohnya
import queue
# Buat sebuah queue dengan kapasitas maksimum 5
q = queue.Queue(maxsize=5)
# Tambahkan beberapa item ke queue
q.put(1)
q.put(2)
q.put(3)
# Cek item paling depan di queue
print(q.get()) # Output: 1
# Cek item paling depan di queue lagi
print(q.get()) # Output: 2
2). Membuat struktur data queue sendiri dengan menggunakan tipe data array atau linked list contoh dengan mengikuti pseudocode berikut ini.
class Queue:
def __init__(self):
self.items = []
def is_empty(self):
return not self.items
def enqueue(self, item):
self.items.append(item)
def dequeue(self):
return self.items.pop(0)
Demikian penjesan singkat mengenai pengertian Queue dan contoh sederhana penerapannya dalam bahasa pemrograman yang biasa dipakai.