Tumpukan dalam struktur data Stack Tumpukan dalam struktur data
Apa itu stack ? Stack = tumpukan LIFO (Last In First Out) Terakhir kali dimasukkan, maka terkahir kali di keluarkan
Ciri-ciri stack TOP merupakan sebutan untuk elemen paling atas dari suatu stack Elemen TOP merupakan elemen yang paling akhir ditambahkan Elemen TOP diketahui penambahan dan penghapusan elemen selalu dilakukan di TOP LIFO
Pemanfaatan Stack Perhitungan ekspresi aritmatika (posfix) algoritma backtraking (runut balik) algoritma rekursif
Operasi Pada Stack InsertFirst() DeleteFirst() IsEmpty() IsFull() IsClear() Peek()
InsertFirst & DeleteFirst InsertFirst disebut juga “Push”, InsertFirst itu adalah menambahkan sebuah elemen ke stack DeleteFirt disebut juga “Pop” DeleteFirst ialah penghapusan sebuah elemen dari tumpukan
IsEmpty & IsFull Pengecekan apakah stack kosong atau ada elemennya Pengecekan stack apakah full(penuh) atau belum
Clear & Peek Clear() Peek() Clear() ialah penghapusan semua data atau elemen dari stack Peek() melihat data TOP, atau dengan kata lain “apakah yang ada pada elemen terakhir(top) dari stack?”
Pendeklarasian Stack Typestack = record Data : array[1...max_stack] of type data Top : 0...max_stack; End; Var S :typestack
Skema Traversal Pada Stack Procedure ProsesTraversal (Var TI:TabInt); Var i:integer; Begin Inisialisasi; {prosedur persiapan sebelum pemrosesan} For i:=IdxMin to IdxMax do Begin Proses (TI[i]); {proses terhadap elemen saat itu} End; Terminasi; {prosedur aksi setelah pemrosesan selesai} End;
Implementasi stack pada pemograman pascal Stack Pada Pascal Implementasi stack pada pemograman pascal
Prosedur Stack Pada Pascal Inisiasi Pengecekan Push Menampilkan POP
Inisiasi
Pengecekan
Push
Menampilkan
POP
Proses Push Berjalan
Proses POP Berjalan
Pengunaan atau pengaplikasian stack Stack & Aritmetika Pengunaan atau pengaplikasian stack
Prefix Operator ditempatkan sebelum dua operand Contoh : A + B * C (Infix) Maka notasi prefix-nya adalah +A*BC
Infix Operator ditempatkan diantara dua operand Contoh : A + B * C A – ( B + C ) * D ^ E
Postfix Operator berada dibelakang operand Contoh : A + B * C (Infix) maka notasi postfix-nya adalah ABC*+
Kesimpulan Stack adalah penyimpan sementara untuk proses yang diperlukan, misal pada recursive Elemen pada stack agak sulit dicari, dan tidak diperlukan pencarian
End of slide kamsahamnida