100% menganggap dokumen ini bermanfaat (3 suara)
1K tayangan15 halaman

Materi 9 - Queue

Dokumen tersebut membahas tentang antrian (queue) sebagai struktur data ordered list dengan penyisipan di satu ujung dan penghapusan di ujung lain. Queue bersifat FIFO di mana elemen pertama masuk akan keluar pertama. Queue dapat direpresentasikan menggunakan array atau linked list, dengan kelemahan array jika kapasitas tidak terpakai sepenuhnya.

Diunggah oleh

Euis Marlina
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (3 suara)
1K tayangan15 halaman

Materi 9 - Queue

Dokumen tersebut membahas tentang antrian (queue) sebagai struktur data ordered list dengan penyisipan di satu ujung dan penghapusan di ujung lain. Queue bersifat FIFO di mana elemen pertama masuk akan keluar pertama. Queue dapat direpresentasikan menggunakan array atau linked list, dengan kelemahan array jika kapasitas tidak terpakai sepenuhnya.

Diunggah oleh

Euis Marlina
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPT atau baca online di Scribd
Anda di halaman 1/ 15

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

Anda mungkin juga menyukai