Stack = 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
Operasi 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 with Array of Struct
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
Program Stack
Contoh deklarasi MAX_STACK
#define MAX_STACK 10
Contoh deklarasi STACK dengan struct dan array data
typedef struct STACK{
int top;
int data[10];
};
Deklarasi/buat variabel dari struct
STACK tumpuk;
Program Stack (2)
Inisialisasi Stack
Pada mulanya isi top dengan -1, karena array dalam bahasa C dimulai dari 0, yang berarti bahwa data stack adalah KOSONG!
Top adalah suatu variabel penanda dalam Stack yang menunjukkan elemen teratas data Stack sekarang. Top Of Stack akan selalu bergerak hingga mencapai MAX of STACK yang menyebabkan stack PENUH!
Program Stack (3)
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
sumber: http://www.google.co.id/#hl=id&cr=countryID&ei=5QKaS_6PD9C1rAeXkZHSCw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAUQBSgA&q=antrian/queue+dalam+struktur+data&spell=1&fp=a05003197864f75b
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar