Jumat, 04 Oktober 2013

stack pada java

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA7xr1ivjrVhFy-VKchvDgDhyphenhyphen3WfrhdmAOTThgF4H0lelGvqt6x0DIsIfIUPQHGIeEuHCNYIiGxsIOs6bWqMQH0bNIBS_MMAQnSVxSo1z3SZvAVm49I65HLheniuzwLxHK4blQTq9-kSEh/s320/stack.png

Stack adalah salah satu struktur data yang memiliki sistem kerja Last In First Out (LIFO), yang terakhir masuk pertama keluar. Dapat di ilustrasikan seperti sebuah tumpukan buku, ketika mengambil sebuah buku di dalam tumpukan itu maka harus diambil satu persatu dari buku yang paling atas dari tumpukan buku tersebut.  Sebuah stack hanya dapat ditambahkan dan dikurangi elemennya hanya dari satu sisi yakni elemen atasnya atau biasa disebut Top Of Stack.

Fungsi dalam Stack:
Fungsi init: fungsi yang digunakan untuk inisialisasi atau membuat stack baru yang masih kosong.
Fungsi full: digunakan untuk mengetahui stack penuh atau tidak.
Fungsi empty: digunakan untuk mengetahui stack kosong atau tidak.
Fungsi clear: digunakan untuk mengosongkan stack. Stack dianggap kosong apabila puncak stack berada pada posisi -1.
Fungsi push: digunakan untuk menambahkan data ke dalam stack. Penambahan data tidak bisa dilakukan apabila stack sudah penuh. Urutan perintahnya adalah: menambahkan nilai top dan menambahkan data pada posisi nilai top. Jika dalam Linked List menggunakan method addLast
Fungsi pop: digunakan untuk mengeluarkan data teratas stack dengan syarat bahwa stack tidak kosong. Urutan perintahnya adalah : menghapus data pada posisi nilai top dan menurunkan nilai top. Jika dalam Linked List menggunakan method removeLast
PEOGRAM STACK PADA JAVA NETBEANS
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5VJbAYaT41c4TAyVuGXv1OWLftDaRJuWwAA0qDb3diiBbbPsvwDR9TiT_3zkJrwI-T2Zsq7h2jzz3qc4mtqVl752mfCgl_Frp9TUiMDdt5ksnP817LdHsNkIzE00cks8YRBG4JvSyFlU/s320/stack.png
     Anda pernah mendengar program stack?? Baik di Pascal maupun di Java??? Ya, Stack adalah program baru yang akakn kita dapatkan setelah menempuh matakuliah Struktur Data. Stack artinya tumpukan. Sama halnya ketika kita menumpuk piring. Piring yang pertama kali di letakkan pasti akan berada di bawah dan di ikuti dengan tumpukan piring di atasnya.

   Ketika mau mengambil piring, seharusnya di ambil yang paling atas dulu dan di ikuti pengambilan piring selanjutnya. Untuk mengetahui cara kerjanya, klik di sini untuk mendapatkan codenya.
Stack adalah tumpukan, iya memang inti dari stack itu tumpukan. Maksudnya ?
Gini loh, jadi stack itu merupakan tumpukan data dimana Stack ini bersifat LIFO (Last in First out),yaitu Data yang terakhir masuk akan pertama kali dikeluarkan.
Pada Stack ada 2 yang perlu kita ketahui yaitu push dan pop
Push adalah memasukkan data
Pop adalah mengeluarkan data
Iustrasi Push :
http://i1089.photobucket.com/albums/i341/Abdullah3112/ASD%20-%20Stack/1_zpse233f17d.png
Data(49) di Push atau dimasukkan ke dalam tumpukan, Data(49) berada di akhir tumpukan. Jadi, setiap ada data yang push atau dimasukkan ke dalam tumpukan stack, maka data itu akan berada di akhir tumpukan atau tumpukan paling atas jika kita melihat pada gambar diatas.
Ilistrasi Pop :
http://i1089.photobucket.com/albums/i341/Abdullah3112/ASD%20-%20Stack/2_zps2d2c8347.png
Seperti penjelasan di awal. Stack menggunakan prinsip LIFO (Last in First Out). Data yang terakhir masuk atau data yang berada di tumpukan terakhir akan pertama kali di keluarkan.
Pada gambar diatas kita melihat bahwa Data(49) berada di akhir tumpukan atau kalo kita lihat di gambar. Karena Data(49) berada di tumpukan terakhir, ketika melakukan Pop, maka data yang pertama kali di pop adalah Data(49), jika Data(49) sudah di Pop,terus kita mau Pop lagi, maka Data(27) yang akan di pop begitu seterusnya.
pada dasarnya stack adalah suatu proses untuk menampung mengeluarkan secara terbalik dari tampungan. atau dalam kata lain stack adalah tumpukan dimana jika kita melakukan penumpukan pada pertama kali maka kita akan terambil pada terakhir kali. (pertama masuk terakhir keluar)
Stack mengunakan array sebagai tempat penyimpanannya.
Stack memeiliki komponen utama berupa :
Top–> adalah index tertinggi dari array ayng memiliki data.
isEmpyt–>menunjukkan dimana Stack itu dalam keadaan kosong.(top sama dengan -1 karena index terkecil adalah 0)
isFull–>menunjukkan dimana konsisi Stack penuh (top sama dengan index tertinggi)
push–>proses memasukkan data.
pop –>proses mengeluarkan data.(buka di salin tapi di ambil).


Tidak ada komentar:

Posting Komentar