Stack adalah suatu koleksi atau kumpulan item data yang teroganisasi dalam bentuk urutan linear, yang operasi pemasukan dan penghapusan datanya dilakukan pada salah satu sisinya.
Elemen-elemen yang berada dalam stack, memiliki prinsip paling mendasar dalam pengoperasiannya yaitu prinsip LIFO (Last In First Out) atau elemen yang masuk paling terakhir akan memiliki prioritas untuk keluar paling pertama.
Suatu stack dapat digambarkan sebagai suatu array berdimensi satu yang elemen-elemennya berkisar antara 1 sampai N elemen.
•- Overflow : Penambahan elemen > N+1
•- Underflow : Pengambilan elemen < 0
-Penambahan atau pengambilan elemen stack selalu dilakukan pada elemen teratas stack.
IsEmpty (Stack)
Operasi ini digunakan untuk memeriksa isi suatu stack dalam keadaan kosong atau tidak. Operasi ini memiliki 2 kondisi boolean, yaitu: True, apabila stack berada dalam kondisi kosong atau nilai elemennya = 0. False, apabila stack tidak berada dalam kondisi kosong atau nilai elemennya > 0.
Spesifikasi :
•-Input : Stack
•-Syarat awal : Tidak ada
•-Output : Boolean
•-Syarat akhir : Sesuai kondisi Boolean di atas
IsFull (Stack)
Operasi ini digunakan untuk memeriksa isi suatu stack dalam keadaan penuh atau tidak.
Spesifikasi :
•-Input : Stack
•-Syarat awal : Tidak ada
•-Output : Boolean
• -Syarat akhir : Bernilai True apabila stack dalam keadaan penuh
Push (Stack, Elemen)
Operasi ini digunakan untuk menambahkan sebuah elemen
dengan nilai X pada puncak suatu stack, sehingga posisi paling
atas stack bernilai X, penerapan operasi Push pada suatu
Stack(S) akan berakibat Overflow apabila nilai stack tersebut
telah lebih dari maksimum.
Spesifikasi :
•Input : Stack dan elemen baru
•Syarat awal : Stack tidak penuh
•Output : Stack
•Syarat akhir : Stack bertambah satu elemen
Pop (Stack)
Operasi ini digunakan untuk menghapus elemen teratas
sebuah stack, sehingga jumlah nilai stack akan berkurang satu
elemen dan nilai teratas stack akan berubah. Operasi Pop
dapat menyebabkan kondisi Underflow apabila suatu stack
telah berada dalam kondisi minimum saat dilakukan operasi
Pop.
Spesifikasi :
•Input : Stack
•Syarat awal : Stack tidak dalam kondisi kosong
•Output : Stack dalam informasi Pop
•Syarat akhir : Stack berkurang satu elemen
•Clear (Stack)
Operasi ini digunakan untuk mengosongkan
stack (membuat nilainya menjadi 0).
•Top of Stack
Operasi ini digunakan untuk mengetahui elemen
teratas pada sebuah stack.