TUMPUKAN

•Suatu susunan koleksi data dimana data  dapat ditambahkan dan dihapus selalu dilakukan pada bagian akhir data, yang disebut dengan top of stack
•Stack bersifat LIFO (Last In First Out)
•“Benda yang terakhir masuk ke dalam stack akan menjadi yang pertama keluar dari stack
•Push : digunakan untuk menambah item pada stack pada tumpukan paling atas
•Pop : digunakan untuk mengambil item pada stack pada tumpukan paling atas
•Clear : digunakan untuk mengosongkan stack
•IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
•IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh
STACK DENGAN ARRAY
•Definisikan Stack dengan menggunakan suatu struct
•Definisikan konstanta MAX_STACK untuk menyimpan maksimum isi stack
•Elemen struct Stack adalah array data dan top untuk menadakan posisi data teratas
•Buatlah variabel tumpuk sebagai implementasi dari struct Stack
•Deklarasikan operasi-operasi/function di atas dan buat implemetasinya

Fungsi IsFull

•Untuk memeriksa apakah stack sudah penuh?
•Dengan cara memeriksa top of stack, jika sudah sama dengan MAX_STACK-1 maka full, jika belum (masih lebih kecil dari MAX_STACK-1) maka belum full

Fungsi IsEmpty

•Untuk memeriksa apakah data Stack masih kosong?
•Dengan cara memeriksa top of stack, jika masih -1 maka berarti data Stack masih kosong!

Fungsi Pop

•Untuk mengambil data Stack yang terletak paling atas (data yang ditunjuk oleh TOS).
•Tampilkan terlebih dahulu nilai elemen teratas stack dengan mengakses indeksnya sesuai dengan top of stacknya, baru dilakukan di-decrement nilai top of stacknya sehingga jumlah elemen stack berkurang.
STUDI KASUS
•Pembuatan Kalkulator SCIENTIFIC
•Misalkan operasi: 3 + 2 * 5
•Operasi di atas disebut notasi infiks, notasi infiks tersebut harus diubah lebih dahulu menjadi notas postfix
•3 + 2 * 5 notasi postfiksnya adalah 3 2 5 * +

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s