Download - Materi 9 - Queue
![Page 1: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/1.jpg)
Mata Kuliah Struktur Data - 2008
Euis Marlina, S.Kom
Email : [email protected]://euismarlina.edublogs.org
HP : 08179424319
![Page 2: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/2.jpg)
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
![Page 3: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/3.jpg)
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
![Page 4: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/4.jpg)
Sistem Produksi Barisan bahan atau komponen yang akan diproses
suatu mesin Barisan bahan atau komponen yang akan diproses
manusiaSistem Komputer Pemrosesan banyak job (tugas) pada sistem
multiprogrammingSistem Jaringan Komputer Pemrosesan banyak paket yang datang dari banyak
koneksi pada suatu host, bridge, gateway.
Mata Kuliah Struktur Data - 2008
![Page 5: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/5.jpg)
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
![Page 6: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/6.jpg)
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
![Page 7: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/7.jpg)
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
![Page 8: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/8.jpg)
Create Empty Enqueue Full Dequeue getfront
Mata Kuliah Struktur Data - 2008
![Page 9: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/9.jpg)
Create Empty Enqueue Dequeue getfront
Mata Kuliah Struktur Data - 2008
![Page 10: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/10.jpg)
#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
![Page 11: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/11.jpg)
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
![Page 12: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/12.jpg)
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
![Page 13: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/13.jpg)
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
![Page 14: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/14.jpg)
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
![Page 15: Materi 9 - Queue](https://reader033.vdocument.in/reader033/viewer/2022052506/5571f24849795947648c6a85/html5/thumbnails/15.jpg)
Mata Kuliah Struktur Data - 2008