Monday, 22 September 2025

Tumpukan (Stack) dan Antrian (Queue)

 

Pengertian

  • Tumpukan (Stack)

    Struktur data yang menyimpan data seperti tumpukan barang. Data yang terakhir masuk akan menjadi yang pertama keluar (Last In First Out – LIFO).
    ➝ Contoh: Tumpukan piring di kantin, piring terakhir yang ditaruh di atas akan diambil duluan.

  • Antrian (Queue)
    Struktur data yang menyimpan data seperti barisan antrian. Data yang pertama masuk akan menjadi yang pertama keluar (First In First Out – FIFO).
    ➝ Contoh: Orang antre beli tiket, orang pertama yang masuk antrian akan dilayani duluan.


Konsep FIFO dan LIFO

  • FIFO (First In First Out)
    Elemen pertama yang masuk akan keluar pertama.
    ➝ Dipakai pada Queue (Antrian).

  • LIFO (Last In First Out)
    Elemen terakhir yang masuk akan keluar pertama.
    ➝ Dipakai pada Stack (Tumpukan).


Operasi Dasar

Stack (LIFO)

  1. Push → Menambahkan data ke dalam tumpukan.

  2. Pop → Menghapus data dari atas tumpukan.

  3. Peek/Top → Melihat data paling atas tanpa menghapusnya.

Queue (FIFO)

  1. Enqueue → Menambahkan data ke dalam antrian (belakang).

  2. Dequeue → Menghapus data dari antrian (depan).

  3. Peek/Front → Melihat data paling depan.


Contoh Ilustrasi

Stack (LIFO)

Tumpukan buku: [A, B, C] (A paling bawah, C paling atas)

  • Push(D) → [A, B, C, D]

  • Pop() → [A, B, C] (D keluar)

Queue (FIFO)

Antrian orang: [A, B, C] (A paling depan, C paling belakang)

  • Enqueue(D) → [A, B, C, D]

  • Dequeue() → [B, C, D] (A keluar)


Perbedaan Stack dan Queue

Aspek          Stack (Tumpukan)   Queue (Antrian)
Konsep    LIFO    FIFO
Masuk data    Push (atas)    Enqueue (belakang)
Keluar data    Pop (atas)    Dequeue (depan)
Analogi    Tumpukan piring    Antrian tiket

Penerapan dalam Kehidupan Nyata

  • Stack (LIFO): Undo/redo di aplikasi, browser history.

  • Queue (FIFO): Sistem antrian bank, printer queue, antrian pelanggan.

No comments:

Post a Comment