Selasa, 24 Januari 2017

Stack

Stack

Secara bahasa, stack berarti tumpukan. Jika dikaitkan dengan struktur data, stack berarti sekumpulan data yang strukturnya menyerupai tumpukan. Stack harus diberi nama sebagai identifikasi. Konsep penyimpanan data pada stack menganut sistem "yang terakhir masuk sebagai yang pertama keluar" (Last In First Out / LIFO). Dengan konsep ini, urutan pengambilan data akan berkebalikan dengan urutan penyimpanan data. Elemen yang terakhir disimpan akan menjadi yang pertama kali diambil. Dengan konsep ini maka kita tidak dapat mengambil data yang tersimpan dalam stack secara acak. Data dalam stack harus disimpan dan diambil dari satu sisi atau satu pintu saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran yang tumpukannya dapat ditambah pada bagian paling atas dan jika mengambilnya pun dari bagian paling atas pula.

Cara mengakses stack adalah dengan melakukan operasi dasar pada stack yaitu operasi push dan pop. Dimisalkan pintu keluar masuknya data pada stack disebut dengan TOP sebagaimana dilihat pada Gambar 3.8. Operasi push adalah proses memasukkan data baru ke stack melalui pintu TOP sehingga data terbaru akan terletak pada posisi teratas. Operasi pop adalah proses mengeluarkan atau mengambil data dari stack dan data yang diambil adalah data yang terletak di posisi teratas. Dengan konsep LIFO maka ketika operasi
push dilakukan maka informasi yang diperlukan hanyalah isi atau nilai atau elemen yang akan disimpan atau diambil saja. Operasi push dan pop tidak memerlukan informasi posisi data. Sebagai ilustrasi, stack dapat dilihat seperti pada Gambar 3.8, tampak bahwa stack tersebut bernama S.


Bagian Top pada stack merupakan pintu untuk keluar masuknya data – data stack. A, B, dan C merupakan suatu koleksi. Dari ilustrasi dapat diketahui bahwa C merupakan data yang terakhir memasuki stack namun pertama keluar dari stack. Begitu sebaliknya dengan A, A merupakan data pertama yang memasuki tumpukan namun terakhir saat keluar dari tumpukan. Di dalam gambar juga terlihat urutan masuk dan keluar yang berkebalikan. Data yang masuk pertama akan keluar terakhir dan sebaliknya.

Tidak ada komentar:

Posting Komentar