Search
Operasi Dasar Stack
Dalam ilmu komputer, Stack adalah data abstrak jenis yang berfungsi sebagai kumpulan elemen. Sebagian besar semua operasi dilakukan hanya di satu ujung dari tumpukan yang paling atas tumpukan. Urutan penyimpanan elemen dalam tumpukan dengan cara LIFO (Last-in-First-Out). Ini berarti elemen yang dimasukkan terakhir akan dihapus terlebih dahulu.

Source Code App Stack
package Stack;
import java.util.Scanner;
public class appStack {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
cStack myStack = new cStack();
System.out.println("Aplikasi STACK");
int pilih;
do{
System.out.println("Pilihan MENU:");
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();
System.out.println("");
switch(pilih){
case 1:
System.out.println("PUSH");
System.out.println("Nama Mahasiswa : ");
String nm = sc.next();
cItem t = new cItem(nm);
myStack.push(t);
System.out.println("Mahasiswa berhasil ditambahkan...");
break;
case 2:
System.out.println("POP");
t = myStack.pop();
if(t == null){
System.out.println("Data Kosong");
}else{
System.out.println("Nama Mahasiswa : "+t.getNama());
System.out.println("Mahasiswa Berhasil dihapus");
}
break;
case 3:
System.out.println("PRINT");
myStack.Print();
System.out.println("");
break;
case 4:
System.out.println("Terimakasih");
break;
}
}while(pilih != 4);
}
}Source Code cItem
package Stack;
class cItem {
private String nama;
cItem next, prev;
cItem (String n){
nama = n;
}
public void setNama(String nm){
nama = nm;
}
public String getNama(){
return nama;
}
}Source Code cStack
package Stack;
class cStack {
cItem top, tail;
int Jum;
cStack (){
top = tail = null;
Jum = 0;
}
public void push (cItem Baru){
if(top == null){
top = tail = Baru;
}
else{
Baru.next = top;
top.prev = Baru;
top = Baru;
}
}
public cItem pop(){
if (top == null){
return null;
}else if (top.next == null){
cItem t = top;
top = tail = null;
return t;
}else {
cItem t = top;
top = top.next;
top.prev = null;
t.next = null;
t.prev = null;
return t;
}
}
public void Print(){
System.out.println("Daftar Nama Mahasiswa : \n");
for(cItem t = top; t != null; t =t.next){
System.out.println(t.getNama());
}
System.out.println("");
}
}Hasil Program






Comments