Anda di halaman 1dari 15

STACK & QUEUE

Struktur Data
STACK (TUMPUKAN)
Stack (tumpukan) sebenarnya
secara mudah dapat diartikan
sebagai list (urutan) dimana
penambahan dan pengambilan
elemen hanya dilakukan pada
satu sisi yang disebut
top(puncak) dari stack
Pengertian Stack
Data yang diletakkan diatas data
yang lainnya
Dlam stack bisa menambahkan,
menyisipkan dan menghapus
data
Contoh : tumpukan piring
Konsep : LIFO (Last In First Out)
Operasi pada Stack
Proses penyisipan/penghapusan
dilakukan pada satu ujung yang disebut
TOP dari stack
Dasar stack adalah PUSH = menambah
elemen, dan POP = menghapus elemen
Penambahan elemen baru pada stack
yang sudah penuh overflow
Penghapusan pada stack yang
kosong/tidak memiliki elemen
underflow.
Studi Kasus Stack
Pembuatan kalkulator Scientific
(pendekatan ilmiah)
Misal operasi : 3 + 2 * 5
Operasi di atas disebut notasi
infiks, notasi infiks tersebut harus
diubah menjadi notasi postfix
3 + 2 * 5 notasi postfiksnya
adalah 3 2 5 * +
Contoh kasus :
Terdapat 3 elemen ditambahkan
secara berurutan pada stack kosong
yaitu elemen A, B dan C, maka
stack dapat ditulis sebagai stack A,
B, C dan bila digambarkan :
1 2 3 4 5
A B C

TOP
Penyisipan dan penghapusan hanya
terjadi pada TOP.
Soal :
Stack dengan 6 sel memory mula-mula kosong, tentukan output
dari modula berikut :
A:= 7
B:= 5
call push (stack, A)
call push (stack, 2B)
call push (stack, A+B)
call push (stack,A-B)
call push (stack,2AB)
call push (stack, 9)
While TOP <> null
do
call pop (stack, item)
write item
Enwhile
return.
Antrian
Queque
Dequeue (deques, Double
Queue/Deck)
Queue Prioritas (Antrean
Berprioritas)
Dequeue
Prosesuntuk mengeluarkan
elemen atau menghapus data.
Pengertian Queue
Adalah antrian
Struktur data dimana data yang
pertama kali dimasukkan adalah
data yang pertama kali bisa
dihapus
Mekanisme FIFO (First In First
Out)
Operasi pada Queue
Memiliki 2 Var pointer yaitu :
FRONT (lokasi elemen depan)
REAR (lokasi elemen belakang)
Front = Null menyatakan queue
kosong, jika elemen di hapus dari
queue harga FRONT bertambah
1.
Contoh Kasus
Queue dengan 6 sel memory sbb :
A C D
1 2 3 4 5 6

Front = 2, Rear = 4
Kemudian gambarkan pemetaan dan
tentukan nilai Rear & Front jika :
a. F ditambahkan ke Queue
b. A & C dihapus
c. K,L,M ditambahkan
d. D & F dihapus
Pemetaan awal
A C D
1 2 3 4 5 6
Front = 2, Rear =4
F ditambahkan ke Queue
A C D F
1 2 3 4 5 6
Front = 2, Rear = 5
A & C dihapus
A C D F
1 2 3 4 5 6
Front = 4, Rear = 5
K, L & M ditambahkan
L M D F K
1 2 3 4 5 6
Front = 4, Rear = 2

D & F dihapus
L M D F K
1 2 3 4 5 6
Front = 6, Rear = 2
SOAL :
Diketahui Queue dengan 5 cell mula-mula kosong.
Gambarkan pemetaan & tentukan nilai Front dan Rearnya :
a. A,B dan C disisipkan
b. A dihapus
c. D dan E disisipkan
d. B dan C dihapus
e. F disisipkan
f. D dihapus
g. G dan H disisipkan
h. E dihapus
i. F dihapus
j. K disisipkan
k. G dan H dihapus
l. K dihapus

Anda mungkin juga menyukai