Queue
Pengertian Queue adalah bentuk khusus dari linear list dengan
operasi penyisipan dan penghapusan dari elemennya queue memiliki 1 pintu masuk
dan 1 pintu keluar yaitu di ujung depan dan ujung belakang atau biasa disebut
head dan tail.
Contoh cara kerja Queue:
Contoh program queue yang saya buat semoga mudah di
mengerti:
#include
#include
#include
#define MAX 8
using namespace std;
typedef struct{
int data[MAX];
int head;
int tail;
}Queue;
Queue
nunggu;
void Create(){
nunggu.head = nunggu.tail = -1;
}
int IsEmpty(){
if (nunggu.tail == -1)
return 1;
else
return 0;
}
int IsFull(){
if (nunggu.tail == MAX - 1)
return 1;
else
return 0;
}
void Enqueue(int data){
if (IsEmpty() == 1){
nunggu.head = nunggu.tail = 0;
nunggu.data[nunggu.tail] = data;
printf("%d sudah dimasukan", nunggu.data[nunggu.tail]);
}
else
if (IsFull() == 0){
nunggu.tail++;
nunggu.data[nunggu.tail] = data;
printf("%d sudah dimasukan", nunggu.data[nunggu.tail]);
}
}
int Dequeue(){
int i;
int e = nunggu.data[nunggu.head];
for (i = nunggu.head; i <= nunggu.tail - 1; i++){
nunggu.data[i] = nunggu.data[i +
1];
}
nunggu.tail--;
return e;
}
void Clear(){
nunggu.head = nunggu.tail = -1;
printf("CLEAR");
}
void Tampil(){
if (IsEmpty() == 0){
for (int i = nunggu.head; i <= nunggu.tail; i++){
printf(" %d",
nunggu.data[i]);
}
}
else printf("data
kosong!\n");
}
int main(){
int op, multi;
printf("\t
=========================================================\n");
printf("\t | PROGRAM QUEUE |\n");
printf("\t
|=======================================================|\n");
printf("\t |
|\n");
printf("\t | >Ricky satria (140010039) |\n");
printf("\t |
|\n");
printf("\t |
|\n");
printf("\t | Compiled With Dev ++ |\n");
printf("\t
|========================================================\n");
printf("\t | BA141 |\n");
printf("\t | Sistem Komputer - STIKOM BALI |\n");
printf("\t
=========================================================\n");
printf("\t | Press Any Key To Continue |\n");
printf("\t
=========================================================\n");
printf("\t ");
getchar();
system("cls");
int pil;
int data;
Create();
do{
cout << "==============================" << endl;
cout << "\tPROGRAM QUEUE"
<< endl;
cout << "==============================\n\n" << endl;
cout << "1. ENQUEUE\n "
<< endl;
cout << "2. DEQUEUE\n "
<< endl;
cout << "3. MENAMPILKN\n "
<< endl;
cout << "4. BERSIHKAN\n "
<< endl;
cout << "5. EXIT\n "
<< endl;
cout << " Masukan Pilihan Di Atas : "; cin >> pil;
switch (pil){
case 1:
cout << "Masukan Data Cuy : "; cin >> data;
Enqueue(data);
break;
case 2:
Dequeue();
break;
case 3:
Tampil();
break;
case 4:
Clear();
break;
case 5:
cout << endl <<
"\nSEMOGA NGERTI :D";
break;
}
getchar();
} while (pil != 5);
return 0;
}
Hasil tampilan program di atas:
sekian penjelasan saya tentang Queue jika ada hal yang kurang jelas bisa bertanya di bagian komentar terima kasih.
Sumber referensi:
Data struktur using c++ course technology
Materi Struktur data ppt pertemuan ke (V)
Post a Comment