STACK & QUEUE Struktur Data
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.
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 : Penyisipan dan penghapusan hanya terjadi pada TOP. 1 2 3 4 5 A B C 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.
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 : FONT (lokasi elemen depan) REAR (lokasi elemen belakang) Front = Null menyetakan queue kosong, jika elemen di hapus dari queue harga FRONT bertambah 1.
Contoh Kasus Queue dengan 6 sel memory sbb : Front = 2, Reart = 4 Kemudian gambarkan pemetaan dan tentukan nilai Rear & Front jika : F ditambahkan ke Queue A & C dihapus K,L,M ditambahkan D & F dihapus A C D 1 2 3 4 5 6
Pemetaan awal Front = 2, Rear =4 F ditambahkan ke Queue A & C dihapus Front = 4, Rear = 5 A C D 1 2 3 4 5 6 A C D F 1 2 3 4 5 6 A C D F 1 2 3 4 5 6
K, L & M ditambahkan Front = 4, Rear = 2 D & F dihapus 1 2 3 4 5 6 L M D F K 1 2 3 4 5 6
SOAL : Diketahui Queue dengan 5 cell mula-mula kosong. Gambarkan pemetaan & tentukan nilai Front dan Rearnya : A,B dan C disisipkan A dihapus D dan E disisipkan B dan C dihapus F disisipkan D dihapus G dan H disisipkan E dihapus F dihapus K disisipkan G dan H dihapus K dihapus