materi Stack queue
๐ Materi: Stack (Tumpukan) & Queue (Antrean)
Informatika Kelas X • Berpikir Komputasional • BK-03: Struktur Data • SMK Negeri 1 Kunduran
๐ค Apa itu Struktur Data?
Di bab ini kita pelajari dua struktur data yang paling dasar. Keduanya sering kamu temui setiap hari tanpa sadar:
Perbedaan besarnya cuma satu: data keluar dari ujung yang mana. Stack mengambil dari ujung yang sama tempat data masuk (atas), queue mengambil dari ujung yang berlawanan (depan). Sisanya, silakan coba sendiri di demo masing-masing!
๐ฅ 1. Stack โ tumpukan piring
Bayangkan tumpukan piring di kantin. Kamu hanya bisa menaruh piring baru di atas, dan hanya bisa mengambil piring yang paling atas. Tidak bisa mengambil piring di tengah-tengah, nanti tumpukannya roboh! Aturannya disebut LIFO: Last In, First Out โ yang terakhir masuk, keluar duluan.
Operasi pada stack (ini yang nanti kamu pakai di game!)
Pop โ mengambil data yang paling atas (data itu keluar dari tumpukan).
Peek / Top โ mengintip data yang paling atas tanpa mengambilnya.
โถ๏ธ Demo: coba Push, Pop, dan Peek sendiri
Contoh nyata stack di HP dan komputer:
- Tombol Undo (Ctrl+Z) โ tindakan terakhirmu dibatalkan duluan. Persis seperti Pop!
- Tombol Back di browser โ kamu kembali ke halaman yang terakhir dibuka.
- Tumpukan piring dan tumpukan buku โ yang di atas selalu diambil duluan.
Kunci mengingatnya: stack itu tidak adil seperti antrean โ yang datang terakhir justru pulang duluan, karena dia berada paling atas.
๐ถ 2. Queue โ antrean kantin
Bayangkan antrean di kantin atau kasir. Orang yang baru datang berdiri di belakang, dan yang dilayani adalah yang berdiri paling depan. Adil, sesuai urutan datang. Aturannya disebut FIFO: First In, First Out โ yang pertama masuk, keluar duluan.
Operasi pada queue (ini yang nanti kamu pakai di game!)
Dequeue (baca: “de-kyu”) โ data yang paling depan keluar untuk dilayani.
Front โ data yang paling depan (yang berikutnya dilayani). Rear โ data yang paling belakang (yang terakhir datang).
โถ๏ธ Demo: coba Enqueue dan Dequeue sendiri
Contoh nyata queue di sekitar kita:
- Antrean printer di lab โ dokumen yang dikirim duluan, dicetak duluan.
- Antrean kasir dan loket tiket โ siapa datang duluan, dilayani duluan.
- Pesan yang masuk ke admin โ dibalas sesuai urutan masuknya pesan.
Kunci mengingatnya: queue itu adil โ tidak ada yang menyerobot. Yang datang pertama, pulang pertama.
โ๏ธ Perbandingan Stack vs Queue
| ๐ฅ Stack (Tumpukan) | ๐ถ Queue (Antrean) | |
|---|---|---|
| Aturan | LIFO โ Last In, First Out (terakhir masuk, keluar duluan) | FIFO โ First In, First Out (pertama masuk, keluar duluan) |
| Menambah data | Push โ di atas | Enqueue โ di belakang |
| Mengambil data | Pop โ dari atas (ujung yang sama) | Dequeue โ dari depan (ujung berlawanan) |
| Analogi | Tumpukan piring | Antrean kantin |
| Contoh nyata | Tombol Undo, tombol Back browser | Antrean printer, antrean kasir |
Satu kalimat untuk diingat: stack mengambil dari tempat ia menaruh (atas), queue mengambil dari ujung seberang (depan).
โ๏ธ Latihan Cepat โ cek pemahamanmu
1. Sebuah stack berisi (dari bawah ke atas): Buku A, Buku B, Buku C. Jika dilakukan Pop satu kali, buku yang keluar adalahโฆ
2. Antrean kantin: Andi paling depan, lalu Budi, lalu Citra paling belakang. Jika dilakukan Dequeue satu kali, yang keluar dari antrean adalahโฆ
3. Tombol Undo pada aplikasi bekerja paling mirip denganโฆ
Buka file game Tebak Stack & Queue di papan PID. Di sana kamu diberi serangkaian operasi Push/Pop dan Enqueue/Dequeue โ tebak isi tumpukan dan antreannya bersama timmu. Jalankan simulasinya untuk membuktikan jawabanmu!