Pengertian QUEUE Bahasa C++ | Pawang SMart

Pengertian QUEUE Bahasa C++

Selamat malam teman-teman kali ini saya akan membagi ilmu yang saya dapa di salah satu kampus Yogyakarta tentang Pengertian QUEUE Bahasa C++.

Queue atau antrian adalah sekumpulan data dimana penambahan elemen hanya bisa dilakukan pada suatu ujung yang disebut dengan sisi belakang (rear), dan penghapusan (pengambilan elemen) dilakukan lewat ujung lain (disebut dengan sisi depan atau front).
Pada Stack atau tumpukan menggunakan prinsip“Masuk terakhir keluar pertama”atau LIFO (Last In First Out), Maka pada Queue atau antrian prinsip yang digunakan adalah “Masuk Pertama Keluar Pertama” atau FIFO (First In First Out).

Queue atau antrian banyak kita jumpai dalam kehidupan sehari-hari, ex: antrian Mobil diloket Tol, Antrian mahasiswa Mendaftar, dll. Contoh lain dalam bidang komputer adalah pemakaian sistem komputer berbagi waktu (time-sharing computer system) dimana ada sejumlah pemakai yang akan menggunakan sistem tersebut secara serempak.

Baca Juga : Apa Itu Struct pada Bahasa Pemograman C++

Pada Queue atau antrian terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya dimana membutuhkan variabel Head dan Tail ( depan/front, belakang/rear).
Seperti pada stack, operasi-operasi dasar pada queue adalah operasi penambahan elemen ( sebut "ADDQ") dan operasi pengambilan elemen (sebut DELQ). (Untuk mempermudah penulisan, di bawah ini isi queue tidak dituliskan secara bertumpuk, tetapi dengan kesepakatan:

Elemen paling kanan adalah elemen yang ada pada ujung belakang (yang terakhir kali masuk)
Queue yang dipakai bernama Q
ADDQ(Q,B) berarti memasukkan elemen B ke dalam queue Q
DELQ(B,Q) berarti mengambil elemen dari queue Q dan menaruhnya ke dalam variabel B



Contoh Program QUEUE Bahasa C++

#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<stdlib.h>
#define n 20

int q[n], f, r, x;

void awal()
{
     f=0;
   r=-1;
}

void insert()
{
     if (r<n-1)
   {
     r=r+1;
      q[r]=x;
   }
   else
   {
     cout<<"ANTRIAN PENUH";
   }
}

void deleteq()
//hanya menampilkan satu data terdepan
//pakai while kalau mau menampilkan semua data antrian
{
     if(f<r+1)
   {
     x=q[f];
      f=f+1;
      cout<<x;

      if((f==r+1) && (r==n-1))
      {
           awal();
      }
   }
   else
   {
     cout<<"ANTRIAN KOSONG";
   }
}

void main()
{
     int pilih;
   awal();

   atas:
     cout<<endl<<"1. INSERT DATA"<<endl;
   cout<<"2. DELETE DATA"<<endl;
   cout<<"3. EXIT DATA"<<endl;
   cout<<"MASUKKAN PILIHAN ANDA : ";
   cin>>pilih;

   switch(pilih)
   {
     case 1 :
           if(r<n-1)
         {
                cout<<"MASUKKAN BILANGAN : ";
            cin>>x;
            insert();
                }
         else
         {
           cout<<"ANTRIAN PENUH";
         }
         goto atas;
           break;
           case 2 :
           deleteq();
           break;
     case 3 :
                exit;
         break;
     default :
           cout<<"MASUKKAN ANGKA ANTARA 1 SAMPAI 3";
           goto atas;
           break;
     }
     getch();

}

1 komentar:

Miliana delete September 13, 2019 at 10:53 AM

lengkap sekali infonya kak makasih

Elever SEO