Monday, May 10, 2010

Contoh Program Queue Array Sederhana dalam Java

import java.io.*;
public class queue_array
{
private int maxsize; //maksimum ukuran queue
private double [] queuearray; //array untuk menyimpan queue
private int front; //indeks elemen terdepan
private int rear; //indeks elemen paling belakang
private int jumlah; //menyimpan jumlah total elemen yang ada

public void inisiasi(int s) //inisialisasi queue
{
maxsize = s;
queuearray = new double [maxsize];
front = rear = jumlah = 0;
}
public void enqueue(double data)
{
if (jumlah==maxsize)
System.out.println("Queue Penuh. "+data+" Tidak Bisa Masuk");
else
{
//System.out.print(rear+" ");
queuearray[rear] = data;
rear = (rear+1)%maxsize;
jumlah++;
System.out.println(data +" Masuk ke Queue");
}
}
public double dequeue()
{
double temp;
if (jumlah==0)
{
System.out.println("Queue Sudah Kosong");
return(-1);
}
else
{
temp = queuearray[front];
front = (front+1)%maxsize;
jumlah--;
System.out.println(temp + " Keluar dari Queue");
return (temp);
}
}
public void view()
{
System.out.print("Isi Queue: ");
if (jumlah > 0 && front < rear) //belum terjadi circular
for(int i=front; i0 && rear <= front) //terjadi circular
{
for(int i=front; i<=maxsize-1; i++) //bagian depan
System.out.print(queuearray[i] + " ");
for(int i=0; i<rear; i++) //bagian belakang
System.out.print(queuearray[i] + " ");
}
System.out.println();
}
public static void main(String[] args)
{
queue_array queue = new queue_array();
queue.inisiasi(3);
queue.enqueue(2);
queue.enqueue(5);
queue.enqueue(3);
queue.enqueue(7);
queue.view();
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.view();
queue.enqueue(8);
queue.enqueue(9);
queue.enqueue(7);
queue.enqueue(10);
queue.view();
queue.dequeue();
queue.view();
}
}

//Selamat Mencoba ^_^

Download Source Code

6 comments:

  1. mana?? program di atas tidak bisa di run

    ReplyDelete
  2. ada bagian sorce code yang langsung diubah oleh wordpress menjadi karakter standard HTML. ini yang harus diperbaiki dulu. diantaranya:
    1. tag "more" di-disable dulu memakai // supaya tidak dianggap sebagai source code.
    2. if (jumlah > 0 && front < rear) --> perintah ini harus diketik ulang di editor coding karena jenis font sdh berubah dari aslinya.

    terima kasih :)

    ReplyDelete
  3. kok q coba merah smua y gan?

    ReplyDelete
  4. maaf, mas yudha. spt yg saya tulis di samping kanan, wordpress otomatis menghapus teks yg dicurigai sbg script berbahaya (virus). karena itu beberapa bagian source code ada yang hilang. sekali lagi mohon maaf... :(

    ReplyDelete
  5. mungkin butuh sedikit modifikasi source code pak :)

    ReplyDelete
  6. kodingannya gagal di sebelah mananya gan? sorry ane numpang copas dan ane pelajari gan.. maklum masih newbie :)

    ReplyDelete