Membuat Stack(Tumpukan) Dengan Java



Stack dalam struktur data merupakan suatu tumpukan dari sekumpulan data. Konsepnya yakni LIPO (Last In First Out), data yang pertama masuk akan keluar paling akhir.

Operasi - operasi dalam stack antara lain :
1. Push   : memasukkan data
2. Pop    : mengambil / mengeluarkan data
3. IsEmpty  : menyidik apakah stack kosong
4. IsFull      : menyidik apakah stack penuh
5. Clear      : mengosongkan stack

berikut yakni source code nya :

/**  *  * @author Wim Sonevel  */ public class Stackx {     int data[];     int top=-1;      Stackx(int kapasitasData){         data=new int[kapasitasData];     }         public boolean isFull(){         if(top==data.length-1){             return true;         }else{             return false;         }     }      public boolean isEmpty(){         if(top==-1){             return true;         }else{             return false;         }     }      public void push(int dataBaru){         if(!isFull()){             top++;             data[top]=dataBaru;         }else{             System.out.println("Data sudah penuh");         }     }      public void pop(){         if(!isEmpty()){             top--;             System.out.println("data dikeluarkan");         }else{             System.out.println("Stack kosong");         }     }      public void tampilkan(){          int pencacah=0;          while(pencacah<=top){             System.out.print("|"+data[pencacah]+"| ");             pencacah++;          }                    if(isEmpty()){              System.out.print("Stack Kosong");          }          System.out.println();     } }   import java.io.*; public class AplikasiStack {     public static void main(String[]args){         Stackx mystack=new Stackx(3);          BufferedReader br = new BufferedReader(new InputStreamReader(System.in));          while(true){             System.out.println("1. Push");             System.out.println("2. Pop");             System.out.println("3. Tampilkan data");             System.out.println("4. Exit");              try{                 System.out.print("pilihan anda no :");                 int pilih = Integer.parseInt(br.readLine());                  if(pilih==1){                     System.out.print("Masukkan data :");                     int data = Integer.parseInt(br.readLine());                     mystack.push(data);                 }else if(pilih==2){                     mystack.pop();                 }else if(pilih==3){                     mystack.tampilkan();                 }else{                     System.exit(0);                 }             }catch(Exception e){              }         }          } } 
output :


1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :1
Masukkan data :10
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :1
Masukkan data :20
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :3
|10| |20|
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :2
data dikeluarkan
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :3
|10|
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :2
data dikeluarkan
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :3
Stack Kosong
1. Push
2. Pop
3. Tampilkan data
4. Exit
pilihan anda no :4

Comments

Popular posts from this blog

Pewarnaan Objek Geometri Di Java 2D

Tugas Komplemen Terakhir

Konsep Oop Encapsulation