Program Stack Single Linked List Barang
Berikut ini merupakan contoh program stack dengan single linked list menggunakan bahasa pemrograman java untuk penyimpanan data barang:
Source Code
1. Class cElemen
public class cElemen {
private String nama;
cElemen next;
cElemen(String n){
nama=n;
System.out.println("Object "+n+" created...");
}
public String getNama() {
return nama;
}
}
2. Class cStack
public class cStack {
//head dan tail
cElemen top, bottom;
int jumlah;
cStack(){
top=bottom=null;
jumlah=0;
System.out.println("Object stack created...");
}
public void push(cElemen baru) {
if(top==null) {
top=bottom=baru;
}
else {
//tumpukan sudah ada isinya
baru.next = top;
top = baru;
}
System.out.println("Push OK...");
}
public cElemen pop() {
if(top==null) {
System.out.println("Stack empty!");
return null;
}
else if(top.next==null) {
cElemen t = top;
top=bottom=null;
System.out.println("Pop OK...");
return t;
}
else {
//isi tumpukan > 1 elemen
cElemen t = top;
top=top.next;
t.next = null;
System.out.println("Pop OK...");
return t;
}
}
public void print() {
System.out.print("Isi Stack: ");
for (cElemen t = top; t != null; t=t.next) {
System.out.print(t.getNama()+" ");
}
System.out.println();
}
}
3. Class appStackSLL
import java.util.Scanner;
public class appStackSLL {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
cStack stack = new cStack();
int pilih=0;
do {
System.out.println("\nMENU STACK");
System.out.println("1. Push");
System.out.println("2. Pop");
System.out.println("3. Print");
System.out.println("4. Exit");
System.out.print("Pilih = ");
pilih = sc.nextInt();
switch(pilih) {
case 1:
System.out.print("Input object name = ");
String n = sc.next();
cElemen b = new cElemen(n);
stack.push(b);
break;
case 2:
cElemen t = stack.pop();
if(t==null) {
System.out.println("Empty!");
}
else {
System.out.println(t.getNama()+" out!");
}
break;
case 3:
stack.print();
break;
case 4:
System.out.println("Thank You...");
break;
}
}while(pilih!=4);
}
}



Comments