Definisi
STACK
•Stack
atau tumpukan bisa diartikan sebagai kumpulan data
yang seolah – olah diletakkan di atas data
yang lain.
•Stack
adalah suatu urutan elemen yang
elemennya dapat diambil dan ditambah hanya pada posisi akhir
(top) saja
•Stact Bersifat LIFO
(Last In First Out).
Operasi pada
Stack
-IsFull Mengecek apakah
STACK sudah penuh
-IsEmpty Mengecek apakah
STACK sudah kosong
-Push Menambahkan data
pada
STACK pada tumpukan
paling atas
-Pop mengambil data
pada
STACK pada tumpukan
paling atas
-Print mencetak semua data
dalam tumpukan
Fungsi Push
Untuk memasukkan elemen ke
stack, selalu menjadi elemen teratas
stack.
Tambah satu
(increment) nilai top
of stack terlebih dahulu setiap kali
ada
penambahan elemen
stack, asalkan
stack masih belum penuh, kemudian isikan
nilai baru ke
stack berdasarkan indeks
top of stack setelah ditambah satu
(diincrement).
Seperti gambar di berikut ini.

Fungsi Pop
Untuk mengambil elemen teratas dari
stack. Ambil dahulu nilai elemen teratas
stack dengan mengakses top
of stack, tampilkan nilai yang
akan diambil terlebih dahulu, baru didecrement nilai top
of stack sehingga jumlah elemen
stack berkurang.
Jenis - jenis
STACK
Single
Stack
Algoritma PUSH
if (Top < n-1)
{
Top = Top + 1;
S[Top] = x;
}
else
cout<<“Stack
Penuh”;
Algoritma POP
if (Top > -1)
{
x = S[Top];
Top = Top - 1;
}
else
cout<<“Stack
Kosong”;
Double
Stack
Disebut juga Stack
Ganda
Prinsip dan Konsep
Proses Double Stack
LIFO (Last In First Out) baik untuk
Stack1 maupun untuk
Stack2
Tidak ada komentar:
Posting Komentar