Wow. Rasanya sudah lama sekali blog ini tidak saya
update. Dikarenakan kesibukan tugas-tugas kuliah yang sangat menumpuk. Hingga
blog ini terbengkalai. (uihhh, bahasanya). Kali ini saya akan membagikan materi
kuliah struktur data. Pada postingan saya sebelumnya juga pernah saya bahas
mengenai materi struktur data, yaitu tentang linked list. Kali ini adalah
kelanjutan dari materi sebelumnya, yaitu QUEUE(antrian). Tentu kita sudah tidak
asing lagi dengan istilah ini. Karena setiap hari kita akan menemuai
kasus-kasus antrian. Saat isi bensin, pergi ke dokter, nonton bioskop, dan
masih banyak lagi. Secara umum, antrian yang akan kita bahas sekarang mirip
dengan antrian yang sering kita jumpai setiap hari.
Pada struktur data, dikenal nama Queue,
yaitu struktur data yang berbentuk antrian, dimana Queue ini menggunakan metode
FIFO(First In First Out). Artinya, data yang pertama dimasukkan, adalah data
yang pertama dikeluarkan. Pada konsep Queue, penghapusan data hanya dapat dilakukan
dari satu sisi, yaitu sisi depan (head). Dan penambahan data dilakukan dari
sisi belakang(tail).
Queue memiliki beberapa operator
penugasan, yaitu:
·
Enque : Operasi penghapusan data
·
Dequeue : Operasi penambahan data
·
IsFull : Operasi pengecekan data penuh
·
IsEmpty : Operasi pengecekan data kosong.
Jenis-Jenis Queue :
- Antrian/queue dengan Linked List
Queue dalam benuk linked list ini maksudnya, kita
mengimplementasikan atau menggambarkan queue tersbut dalam bentuk liked list. Seperti
yang telah kita ketahui sebelumnya, bahwa salah satu kelebihan penggunaan linked list pada
struktur data adalah, pada jumlah elemen yang dapat diisikan. Jika kita
menggunakan linked list, maka jumlah elemen/data yng kita masukan tidak
terbatas.
- Antrian/queue dengan Linier Array
Untuk lebih mengetahui tantang queue dengan Linier
Array, kita lihat contoh operasi queue
sebagai berikut:
Indeks Akhir =
-1
Karena array masih kosong maka indeks awal dan akhir
sama-sama -1.
indeks awal =
0
Indeks akhir =
3
*Penghapusan elemen A dan B
Indeks akhir =
3
Indeks awal =
2
indeks akhir =
0
Jika kita perhatikan, proses penambahan data akan
terus berlanjut dari kiri ke kanan, dari data yang sudah ada, kemudian di isi
belakangnya satu persatu. Seperti itulah penggunaan Queue dengan Linier Array.
- Antrian/queue dengan Circular Array
- Priority Queue
Untuk Queue dengan Circular Array dan Priority
Array, mungkin akan saya lanjutkan pada postingan berikutnya.
0 commen:
Post a Comment