Konsep Queue(Antrian) pada Struktur Data
Setelah beberapa waktu yang lalu kita
mempelajari stack atau tumpukan, kali ini kita akan mempelajari bentuk
khusus dari linear list lainnya, yaitu queue atau antrian.
Sebelumnya saya yakin semua sudah pernah
mengantri bukan ? :D Baik saat membayar ke kasir, registrasi, bahkan antri di
toilet umum, hehehe.
Sebelum masuk ke konsep queue pada
struktufr data, mari kita sedikit membahas antrian di dunia nyata, karena
analogi antrian pada struktur data kurang lebih sama dengan apa yang ada
di kehidupan sebenarnya.
Pada saat kita mengantri, setiap kali ada
orang yang datang, otomatis orang tersebut akan berada di belakang antrian
bukan? Dan siapakah orang yang pertama kali dilayani? Eap. Orang yang pertama
kali datang atau orang yang berada di sisi depan antrian. Dalam antrian, ada
beberapa poin penting, diantaranya adalah siapa orang yang berada paling
depan, siapa yang berada di paling belakang, serta jumlah orang yang mengantri
ada berapa.
Nah, queue atau antrian pada struktur data
juga sama, hanya saja orang diganti menjadi data/elemen. Maka queue adalah
sekumpulan elemen yang jika ada elemen baru yang ditambahkan, maka elemen
tersebut akan berada di bagian belakang antrian Jika ada elemen yang harus
dihapus atau keluar dari antrian, maka elemen yang keluar adalah elemen yang
berada di sisi depan antrian. Atau konsep ini sering juga disebut dengan
konsep FIFO (First In First Out)
Pada queue
hanya terdapat satu pintu masuk di salah satu ujung dan satu pintu keluar
diujung lainnya, maka ada pointer yang menunjuk pada first dan last.
Operasi
penting dalam queue atau antrian adalah :
- Add yang berfungsi menambahkan sebuah elemen ke dalam antrian
- Delete yang berfungsi menghapus atau mengeluarkan elemen dari antrian
Sebagai
contoh kita mempunyai antrian Q = [Q1, Q2, ….., Qn]
Maka Q1
adalah first, dan Qn adalah last.
Jika
dilakukan prosedur add Qm maka Qm akan berada di belakang Qn
Dan jika
dlakukan prosedur delete, maka Q1 akan keluar dari antrian.
Dalam bidang
Ilmu Komputer, antrian atau queue banyak digunakan terutama dalam system
operasi yang memerlukan manajemen sumber daya dan penjadwalan. Contohnya time-sharing
computer-system dimana ada sejumlah pemakai yang akan menggunakan system
tersebut secara serempak.
Didalam
sebuah antrian, terdapat sebuah operasi bernama add_priority. Dalam hal
ini antrian tidak lagi menerapkan konsep antrian murni, namun menjadi antrian
berprioritas. Dimana terdapat prioritas tertentu pada elemen, dan elemen yang
baru ditambah tidak mesti berada di akhir (Wah, udah kaya pejabat
aja yah, hehe :D). Mungkin didunia nyata elemen yang masuk melalui add priority
adalah orang yang masuk lewat jalur exclusive jadi beliau mendapat
fasilitas agar di dahulukan atau diprioritaskan.
Anyway,
bagaimana implementasinya dalam bahasa C? mesinnya bisa dicek disini
Nama
: M.Ropianto
NIDN:
: 102867804
Status
: Dosen Tetap YAPISTA / STT Ibnu Sina
Pengampuh
Matakuliah
: Sesuai Matakuliah yang ada buat.
Kunjungi Juga
coment
ReplyDeleteterimakasih atas informasinya . .
ReplyDeleteIzin copas gan..
ReplyDeleteSilahkan gan..
ReplyDeleteSalam mahasiswa
ReplyDeleteSemangat ngeblog bro... kunjungi juga yyungyanti.blogspot.com
ReplyDeletebagus!
ReplyDeleteStruktur Data pelajaran masalalu ane :3
ReplyDeleteSemangat belajar bro
mantappp..
ReplyDeleteizin copas gan..
ReplyDeleteSukses bang blognya terus...!!!
ReplyDeleteizin copas gan
ReplyDeletesukses yah blognya..
ReplyDelete