STACK merupakan salah satu struktur data yang memiliki sistem kerja Last In First Out (LIFO), yang terakhir masuk pertama keluar. Stack dapat dibayangkan seperti tumpukan barang, dimana hanya data terakhir yang dapat diperoleh (diakses) dengan satu langkah. Data-data yang terletak di bawahnya hanya bisa diambil (pop) setelah data data yang berada di atasnya diambil (dikeluarkan).
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.
Okee kan penjelasanya...walapun bahasanya agk ketinggian..sok i
Baik biar lebih jelas lagi ane akan beri contoh program java stack..tapi yang sederhana saja..maklum bukan orang berada jadi program aja cuma bisa bikin yang sederhana-sederhana :
Pada contoh di bawah ini saya akan mempraktekkan fungsi dari POP,berikut source codenya :
tolong di simak dengan seksama dan dalam tempo sesingkat-singkatnya... :)
package RyanFebryanto;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Stack;
public class stack2 {
private static
Stack<Integer>stack;
private static
int ukuran;
public static
void main(String[] args) {
System.out.println("=========================================");
System.out.println("-----------welcome di toko
buku----------");
System.out.println("=========================================");
System.out.println("Berapa banyak buku yang di minta?");
ukuran=inputData();
buatStack(ukuran);
bacaData();
tulisData();
System.out.println("=========================================");
System.out.println("--------------terima
kasih---------------");
System.out.println("=========================================");
}
private static
void buatStack(int ukuran){
stack = new
Stack<>();
}
private static
void bacaData(){
int data;
System.out.println("Masukan nilai Stack");
for
(int i = 0; i < ukuran; i++) {
System.out.print("Data ke-"+(i+1)+" ");
data=inputData();
stack.push(data);
}
}
private static
void tulisData(){
System.out.println("Isi data dengan menggunakan prosuder
POP");
int
dataStack;
for (int i
= 0; i <ukuran; i++) {
dataStack=stack.pop();
System.out.println("Nilainya = " + dataStack);
}
}
private static Integer inputData(){
BufferedReader
bfr= new BufferedReader(new InputStreamReader(System.in));
String
angkaInput= null;
try{
angkaInput=bfr.readLine();
}catch(IOException e){
e.printStackTrace();
}int Data = Integer.valueOf(angkaInput).intValue();
return Data;
}
}
Ket :
disini saya akan menjelaskan hanya code-code yang jarang di temui pada program lain,untuk code-code seperti system.out.println saya kira agan-agan sudah mengerti :- Dalam Code di atas sendri terdapat beberapa import yang harus di tambahkan dalam program stack yaitu seperti Import sebagai library, dan java .io. bufferedreader untuk membaca inputan dari java. Io. stream reader. dan import lainnya berfungsi untuk menungjang code di bawahnya.
-
BufferedReader masuk =new bufferedreader (new InputStreamReader (system.in)); String test = masuk.readline() ; berarti untuk menangkap inputan, yang dideklarasikan di dalam
- Selain mengunakan POP di dalam program ini juda menggunakan perulangan yang akan menghasilkan nilai sesuai dengan kondisi perulangan contohnya : for
(int i = 0; i < ukuran; i++) {System.out.print("Data ke-"+(i+1)+" ");data=inputData();stack.push(data);
Dalam perulangan tersebut menyatakan i sama dengan 0 dan i kurang dari variabel ukuran dan untuk cetakkanya setiap data yang di input akan ditambah 1 pada (i+1).Setelah itu data akan di masukan dalam Stack (stack.push(data))
- Selain Push dalam program tersebut menggunakan fungsi POP juga yaitu data yang di inputkan akan dikeluarkan dari stack.
- Hasil outputnya adalah data yang terakhir masuk pertama keluar dan di POP,berikut hasil Outputnya:
-
=========================================-----------welcome di toko buku----------=========================================Berapa banyak buku yang di minta?3Masukan nilai StackData ke-1 : 3Data ke-2 : 4Data ke-3 : 6Isi data dengan menggunakan prosuder POPNilainya = 7Nilainya = 5Nilainya = 4=========================================--------------terima kasih---------------=========================================BUILD SUCCESSFUL (total time: 7 seconds)
- Demikian paparan ane mengenai program stack semoga bermanfaat dan memberi manfaat juga terhadap nilai saya..amienn
- Sebelum ane ahiri mungkin ada kata atau lebih tepatnya doa mungkin agan-agan yang membaca dapat meniru atau terinspirasi untuk lebih-dan lebih ingin mengembangkan ilmu terlebih pemograman
- One Day; One Project;..
A move that will try to live for the sake of perfect JAVA programing,,
hopefully blessed by Allah, Aamiin - Semoga agan-agan yang membaca ikut mengamini terlebih Allah Swt..
- Nama : Ryan Febryanto
- Nim : 1200631005
- Kelas : Manajemen Informatika B










Posting Komentar