Jadi ini adalah rangkuman dari pertemuan keempat tepatnya pada tanggal 3 Maret 2020. Nah pada post kali ini, saya akan merangkum tentang stack & queue pada data structure. Mari kita bahas mereka satu persatu.

Biasanya, operasi dari stack ada 3, yaitu push, pop, dan top. Push adalah operasi untuk menambah sesuatu dari atas dari stack paling atas (top). Pop adalah operasi untuk menghapus sesuatu dari stack paling atas (top). Sedangkan, top adalah operasi untuk menampilkan siapa yang ada di posisi top sekarang. Contoh dari operasi - operasi tersebut dapat dilihat dibawah.
Stack
Kita semua pasti familiar dengan game yang bernama DoTA kan? Sebenernya ngga terlalu berhubungan sih, tapi dalam DoTA ada teknik yang bernama stack. Teknik ini membuat monster jungle dapat spawn meskipun seharusnya tidak bisa spawn karena masih ada monster jungle. Nah, stack membuat monster jungle itu lebih banyak. Bisa kita simpulkan bahwa stack itu jika di data structure akan menyimpan elemennya dalam urut. Nah, kalo di dalam DoTA, kita harus membuat monster jungle pergi dari spawn box agar monster lainnya bisa spawn lagi. Hal ini mirip dengan data structure, yaitu ketika kita mau menambah elemen ditengah misalnya, kita harus membongkar elemennya dari paling atas, lalu kita bisa menghapus atau menambah elemen di dalamnya. Nah, dalam stack ini, ada dua urutan yaitu LIFO (last in first out) atau FILO (first in last out). Untuk lebih jelas, sebaiknya lihat gambar yang saya akan lampirkan dibawah.
Ilustrasi Stack dari geeksforgeeks
Ilustrasi operasi yang ada di Stack dari BinusMaya
Queue
Nah sekarang kita akan membahas tentang queue atau antrian. Jika dalam stack kita menambah data dari paling atas (top), dalam queue kita menambah data dari paling belakang. Ilustrasi yang paling gampang adalah ketika kita mengantri untuk masuk ke dalam restoran yang ramai. Nah jika kita datang paling lama dari yang lain, maka dalam waiting list, kita akan ada di paling bawah kan? Nah, orang yang ada di waiting list nomor pertama pasti akan mendapatkan tempat duduk duluan. Ketika ada yang ingin masuk ke dalam waiting list lagi, maka orang itu akan mendapatkan tempat di waiting list paling bawah. Nah, di dalam queue di data structure cara kerjanya mirip seperti itu. Jadi, data yang paling awal dimasukkan yang dihapus dan data yang baru ditambahkan yang ditambah. Untuk lebih jelasnya dapat dilihat pada gambar dibawah. Urutan dari queue adalah FIFO (first in, first out). Bukan merk hape yang itu ya...

Ilustrasi queue dari geeksforgeeks
Dalam queue, data yang masuk dimasukkan ke dalam rear dan data yang keluar dikeluarkan dari front. Operasi - operasi yang dapat digunakan pada queue adalah push, pop, dan queue. Operasi push digunakan untuk menambah data dari paling belakang dari queue. Operasi pop digunakan untuk menghapus data dari paling depan dari queue. Sedangkan fungsi front digunakan untuk melihat data apakah yang ada di front. Operasi - operasi ini lebih jelasnya dapat dijelaskan dengan gambar dibawah.
Ilustrasi operasi pada Queue dari BinusMaya
Perbedaan pada Stack dan Queue
Perbedaan yang sangat mendasar antara Stack dan Queue terletak pada penghapusan data. Jika di dalam Stack data yang dihapus adalah data yang baru ditambahkan, dalam Queue data yang dihapus adalah data yang paling pertama ditambahkan.
Komentar
Posting Komentar