Euis Marlina, S.
Kom
Email : [email protected]
http://euismarlina.edublogs.org
HP : 08179424319
Mata Kuliah Struktur Data - 2008
Queue/antrian adalah ordered list dengan
penyisipan di satu ujung, sedang penghapusan
di ujung lain.
Ujung penyisipan disebut rear/tail.
Ujung penghapusan disebut front/head.
Head/front menunjuk ke awal antrian(elemen
terdepan), sedangkan tail/rear menunjuk ke
akhir antrian (elemen paling belakang).
Bersifat FIFO (First In First Out) yaitu Elemen
yang pertama kali masuk ke antrian akan keluar
pertama kalinya.
Mata Kuliah Struktur Data - 2008
Simulasi antrian di dunia nyata, antara lain :
Lalu lintas udara, tinggal landas(take-off)
dan pendaratan(landing)
Antrian pembelian tiket di depan loket untuk
bis, kereta api, bioskop
Antrian mobil di depan gerbang jalan tol
Antrian kendaraan di jalan umum.
Mata Kuliah Struktur Data - 2008
Sistem Produksi
Barisan bahan atau komponen yang akan diproses
suatu mesin
Barisan bahan atau komponen yang akan diproses
manusia
Sistem Komputer
Pemrosesan banyak job (tugas) pada sistem
multiprogramming
Sistem Jaringan Komputer
Pemrosesan banyak paket yang datang dari banyak
koneksi pada suatu host, bridge, gateway.
Mata Kuliah Struktur Data - 2008
Ilmu Komputer
Untuk mensimulasikan sistem diskrit. Perubahan pada
sistem dipicu oleh adanya kejadian(event) yang
menyebabkan perubahan status(state) pada sistem.
Objek-objek yang terlibat pada simulasi sistem diskrit
adalah customer(yang dilayani), server(yang melayani),
buffer(tempat sementara yang menampung antrian
customer) dan clock (waktu simulasi).
Customer dilayani sesuai dengan urutan waktu
kedatangannya, yaitu menggunakan sistem FIFO, kecuali
untuk antrian yang memperhatikan prioritas seperti antrian
pasien di ruang gawat darurat.
Mata Kuliah Struktur Data - 2008
Create : membuat queue baru yang masih kosong
EnQueue: Memasukkan/menyisipkan data baru pada
tail (queue)
DeQueue: Mengeluarkan/menghapus data
terdepan/pertama dari antrian (di front), jika queue
tidak kosong
Clear: Menghapus seluruh antrian
Empty/IsEmpty: Memeriksa apakah antrian
kosong(mengembalikan nilai true jika queue kosong)
Full/IsFull: Memeriksa apakah antrian penuh
(mengembalikan nilai true jika queue penuh)
getfront: mengambil data pertama (di front), jika
queue tidak kosong.
Mata Kuliah Struktur Data - 2008
Implementasi/representasi Queue bisa
menggunakan Array atau Linked list.
Kelemahan representasi queue dengan array
adalah kapasitas penuh yang disediakan dapat
tidak terpakai seluruhnya yaitu bila telah terjadi
penghapusan elemen-elemen antrian awal.
Mata Kuliah Struktur Data - 2008
Create
Empty
Enqueue
Full
Dequeue
getfront
Mata Kuliah Struktur Data - 2008
Create
Empty
Enqueue
Dequeue
getfront
Mata Kuliah Struktur Data - 2008
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#define MAX 10 //ukuran maksimum queue
void insert(int queue[], int *rear, int nilai);
void del(int queue[], int *front, int *rear, int
*nilai);
int main()
{
int queue[MAX];
int front, rear;
int n, nilai;
front = rear = (-1);
Mata Kuliah Struktur Data - 2008
do
{
do
{
cout<<"Masukkan Nilai Elemen : ";
cin>>nilai;
insert(queue,&rear,nilai);
cout<<endl;
cout<<"Tekan 1 untuk Melanjutkan"<<endl;
cin>>n;
} while (n == 1);
cout<<endl;
cout<<"Tekan 1 untuk Menghapus Sebuah
Elemen"<<endl;
cin>>n;
Mata Kuliah Struktur Data - 2008
while(n == 1)
{
del(queue,&front,&rear,&nilai);
cout<<"Nilai telah dihapus :
"<<nilai<<endl;
cout<<endl;
cout<<"Tekan 1 untuk Menghapus Sebuah
Elemen : ";
cin>>n;
}
cout<<endl;
cout<<"Tekan 1 untuk Melanjutkan"<<endl;
cin>>n;
} while (n == 1);
getch();
return 0;
}
Mata Kuliah Struktur Data - 2008
void insert(int queue[], int *rear, int nilai)
{
if(*rear < MAX-1)
{
*rear = *rear + 1;
queue[*rear] = nilai;
}
else
{
cout<<"Queue Penuh, Insert Tidak Dapat
Dilakukan"<<endl;
exit(0);
}
}
Mata Kuliah Struktur Data - 2008
void del(int queue[], int *front, int *rear, int
*nilai)
{
if(*front == *rear)
{
cout<<"Queue Kosong, Delete Tidak Dapat
Dilakukan"<<endl;
exit(0);
}
else
{
*front = *front + 1;
*nilai = queue[*front];
}
}
Mata Kuliah Struktur Data - 2008
Mata Kuliah Struktur Data - 2008