Nama : Lina Wardani
NPM : 21082010116
Kelas : Par C
Source Code
Main Class
package pkgQueue;
import java.util.Scanner;
public class appQueue {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
cQueue antrian = new cQueue();
int pilih = 0;
do{
System.out.println("\n-------MENU ANTRIAN-------");
System.out.println("1. Tambah Antrian");
System.out.println("2. Proses Antrian");
System.out.println("3. Lihat Antrian");
System.out.println("4. Selesai");
System.out.print("Pilih = ");
pilih = sc.nextInt();
switch(pilih){
case 1:
System.out.println("\n--------------------------------");
System.out.println(" TAMBAH ANTRIAN ");
System.out.println("--------------------------------");
System.out.print("Nama Barang = ");
String nm = sc.next();
cNode nm = new cNode(n);
antrian.enqueue(nm);
break;
case 2:
cNode t = antrian.dequeue();
boolean cek = false;
if(t==null){
cek=true;
}
if(cek==true){
System.out.println("Antrian Kosong!");
}
else{
System.out.println(t.getNama()+" keluar");
}
break;
case 3:
antrian.print();
break;
case 4:
System.out.println("Terima Kaish...");
break;
}
}while(pilih!=4);
}
}
Class Queue
package pkgQueue;
public class cQueue {
cNode front,rear;
int size;
cQueue(){
front=rear=null;
size=0;
System.out.println("Objek Antrian dibuAT ");
}
public void enqueue(cNode baru){
if(rear==null){
front=rear=baru;
}
else{
rear.next=baru;
baru.prev = rear;
rear = baru;
}
System.out.println("Nomor Antrian ke -"+(size+1));
size++;
System.out.println("Tambah Antrian sukses...");
}
public cNode dequeue(){
if(rear==null){
System.out.println("Antrian Kosong!");
return null;
}
else if(front.next==null){
cNode t = front;
front=rear=null;
System.out.println("Poses Antrian Sukses...");
size--;
return(t);
}
else{
//queue > 1
cNode t = front.next;
cNode t2 = front;
t2.next = null;
front = t;
front.prev=null;
System.out.println("Proses Antrian Sukses...");
size--;
return(t2);
}
}
public void print(){
int count = 1;
System.out.println("Panjang Antrian : "+size);
System.out.println("Daftar Antrian : ");
for(cNode t = front; t != null; t=t.next){
System.out.println(count+"."+t.getNama()+" ");
count++;
}
if(size==0){
System.out.println("Antrian Kosong!");
}
}
}
Class Object
package pkgQueue;
public class cNode {
private String nama;
cNode next, prev;
cNode(String n){
nama=n;
next=prev=null;
}
public String getNama(){
return nama;
}
}
Comments
Post a Comment