Stack adalah struktur data yang menggunakan konsep LIFO (Last In First Out) dimana elemen terakhir yang disimpan akan menjadi elemen pertama yang diambil. Stack dapat diimplementasikan menggunakan array dan struct yang berisi field untuk menyimpan elemen dan posisi ujung stack. Operasi dasar pada stack antara lain push untuk menambahkan elemen dan pop untuk mengambil elemen puncak.