QUEUE (ANTRIAN)
(ALGORITMA DAN STRUKTUR DATA)
DisusunOleh:
NPM : 2213025061
Alat :
1. Laptop/Komputer
Bahan :
1. Software Dev C++
Queue (Antrian) adalah suatu kumpulan data yang mana penambahan data / elemen
hanya dapat dilakukan pada sisi belakang sedangkan penghapusan / pengeluaran
elemen dilakukan pada sisi depan.
Karakteristik penting queue adalah bersifat FIFO (First In First Out) artinya data
yang terlebih dahulu masuk merupakan data yang akan keluar terlebih dahulu.
Seperti halnya pada antrian yang biasa kita lakukan sehari-hari, di manapun.
Antrian dimulai dari depan ke belakang, jika yang berada didepan belum pergi
meninggalkan antrian maka antrian yang ada dibelakang akan terus bertambah dan
antrian paling belakang disini dinamakan rear/tail. Jika ada yang keluar dari antrian
(dequeue) maka data tersebut adalah yang paling depan (head/front), dan data
berikutnya setelah data yang keluar berubah menjadi yang paling depan
(head/front).
1. Queue.cpp
a. Program Queue
/*Program of queue using array*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 5
int queue_arr[MAX];
void enqueue();
void dequeue();
void display();
main()
int choice;
while(1)
printf("1.Insert\n");
printf("2.Delete\n");
printf("3.Display\n");
printf("4.Quit\n");
scanf("%d",&choice);
switch(choice)
case 1 :
enqueue();
break;
case 2 :
dequeue();
break;
case 3:
display();
break;
case 4:
exit(1);
default:
getch();
void enqueue()
int added_item;
if (rear == MAX - 1)
printf("Queue Overflow\n");
else
if (front == -1)
front = 0;
scanf("%d", &added_item);
rear = rear + 1;
queue_arr[rear] = added_item ;
void dequeue()
printf("Queue Underflow\n");
return ;
else
queue_arr[front]);
front = front + 1;
void display()
int i;
if (front == -1)
printf("Queue is empty\n");
else
printf("Queue is :\n");
printf("%d ",queue_arr[i]);
printf("\n");
}
b. Tampilan Hasil Running Program
Pada hasil running di atas di tampilkan 4 pilihan operasi antara lain Insert,
Delete, Display dan Quit. Langkah pertama user bisa menginput minimal
2 data atau sesuai dengan keinginan user berapa banyak data dan nilai
data yang diinput. Kemudian user bisa memilih operasi ke-3, yaitu
Display maka akan ditampilkan data Queue yang sudah diinput secara
berurutan (13 18 23).
Jika user ingin menghapus beberapa data, maka user harus memilih
operasi ke-2, yaitu Delete maka program akan menghapus data yang
pertama dimasukan yaitu 13. Dan Ketika di Display maka data akan
tersisa 18 dan 23. Untuk mengakhiri running program bisa memilih
operasi Quit untuk keluar dari running program tersebut.
2. Queue1.cpp
a. Program Queue1
/*Program of queue using array*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 5
int queue_arr[MAX];
void enqueue();
void dequeue();
void display();
main()
int choice;
while(1)
printf("1.Insert\n");
printf("2.Delete\n");
printf("3.Display\n");
printf("4.Quit\n");
scanf("%d",&choice);
switch(choice)
case 1 :
enqueue();
break;
case 2 :
dequeue();
break;
case 3:
display();
break;
case 4:
exit(1);
default:
getch();
void enqueue()
int added_item;
if (rear == MAX - 1)
printf("Queue Overflow\n");
else
if (front == -1)
front = 0;
scanf("%d", &added_item);
rear = rear + 1;
queue_arr[rear] = added_item ;
void dequeue()
printf("Queue Underflow\n");
return ;
else
queue_arr[front]);
front = front + 1;
void display()
int i;
if (front == -1)
printf("Queue is empty\n");
else
printf("Queue is :\n");
printf("%d ",queue_arr[i]);
printf("\n");
}
b. Tampilan Hasil Running Program
Kemudian saat melakukan operasi Pop atau menghapus data, data yang
akan dihapus adaalah data yang paling awal ata pertama kali dimasukan.
Dan saat user akan keluar dari running program, user tinggal bisa
memillih operasi Quit untuk keluar dari running program.
V. KESIMPULAN