Stack Dan Queue
Stack Dan Queue
DAN
▸ ASHRI SHABRINA AFRAH, M.T
QUEUES
STRUKTUR DATA LINEAR
▸ Adalah struktur data yang merupakan kumpulan elemen
yang tersusun dalam garis linear.
▸ Stack: merupakan struktur data linear dimana penambahan
dan pengurangan komponen dilakukan di satu ujung saja.
▸ Queue: merupakan struktur data linear dimana
penambahan komponen dilakukan di satu ujung, dan
pengurangan komponen dilakukan di ujung lainnya.
▸ Stacks dan Queue dapat dibuat dengan list, baik array
maupun linked-list.
STACKS
▸ Stacks: Struktur data linear dimana penambahan dan
pengurangan komponen dilakukan pada satu ujung saja,
sesuai dengan prinsip LIFO.
▸ Contoh:
Tumpukan kertas atau piring dimana lembaran/piring yang
diletakkan terakhir (paling atas) akan diambil terlebih dahulu.
STACKS
▸ Impelementasi dari stacks dapat menggunakan list, baik
berbentuk array maupun linked-list.
2. Secara berulang baca deretan simbol tanda kurung dari kerakter paling kiri ke kanan:
▸ Apabila simbol yang terbaca adalah kurung buka, maka push simbol tersebut ke
dalam Stack.
▸ Apabila simbol yang terbaca adalah kurung tutup, maka:
- If Stack kosong Then laporkan error
- Else pop Stack, dan periksa apakah simbol yang di-pop merupakan pasangannya
(jika tidak, laporkan error)
Penyelesaian:
1. Stack kosong
2. Baca simbol pertama, yaitu [. Simbol tersebut adalah tanda kurung buka, maka push ke
dalam Stack.
3. Baca simbol kedua, yaitu {. Simbol tersebut adalah tanda kurung buka, maka push ke
dalam Stack.
4. Baca simbol ketiga, yaitu }. Stack tidak kosong, maka pop isi stack yang ada di puncak
(top), yaitu {. Tanda { merupakan pasangan dari }, maka tidak menghasilkan error.
5. Baca simbol keempat, yaitu ]. Stack tidak kosong, maka pop isi stack yang ada di
puncak (top), yaitu [. Tanda [ merupakan pasangan dari ], maka tidak menghasilkan
error.
6. End of file. Stack sudah kosong. Maka input benar.
CONTOH KODE PROGRAM STACKS (JAVA)