Queue merupakan kumpulan data dengan penambahan data hanya melalui satu sisi, yaitu belakang (tail) dan penghapusan data hanya melalui sisi depan (head). Berbeda dengan stack yang bersifat LIFO maka queue bersifat FIFO(First In First Out), yaitu data yang pertama masuk akan keluar terlebih dahulu dan data yang terakhir masuk akan keluar terakhir.
Berikut ini adalah contoh Program C++ Queue
Sumber : Perkuliahan
Ilustrasi Queue |
Berikut ini adalah contoh Program C++ Queue
#include
#include
typedef struct
{
char data[20];
int head;
int tail;
}Data;
Data queue;
void init()
{
queue.head = queue.tail = -1;
}
int kosong()
{
if(queue.head==-1)
{
return 1;
}
else
{
return 0;
}
}
int penuh()
{
if(queue.tail==20-1)
{
return 1;
}
else
{ return 0;
}
}
void input()
{
char data;
cout <<"Masukkan Data "; cin >>data;
if(penuh()==0)
{
queue.tail++;
queue.data[queue.tail]=data;
cout<<"TERSIMPAN"< }
else
{
cout <<"DATA SUDAH PENUH";
}
}
int keluar()
{
int i;
int x=queue.data[queue.head+1];
for(i=queue.head;i {
queue.data[i]=queue.data[i+1];
}
queue.tail--;
cout <<" DATA DI KELUARKAN"< return x;
}
void hapus()
{
init();
cout <<"Data telah dikosongkan";
}
void tampil()
{
if(kosong()==0)
{
for(int i=queue.head+1;i<=queue.tail;i++)
{
cout < } cout<<"\n"<<"Head : "< cout<<"\n"<<"Tail : "< }
else
{
cout <<"DATA MASIH KOSONG";
}
}
main()
{
int pil;
cout<<"MBF"<cout<<"Linear Data"< do
{
cout<<"\n\n1. Masukkan Data"< cout<<"2. Keluarkan Data"< cout<<"3. Kosongkan Data"< cout<<"4. Tampilkan Data"< cout<<"5. EXIT"< cout<<"Silahkan Masukan Pilihan Anda :";cin>>pil;
cout< switch (pil)
{
case 1:
{
input();
break;
}
case 2:
{
keluar();
break;
}
case 3:
{
hapus();
break;
}
case 4:
{
tampil();
break;
}
case 5:
{
cout< }
default :
{
cout<<"\t\tTidak ada dalam pilihan"< }
}
}
while(pil>=1 && pil<= 4);
}
typedef struct
{
char data[20];
int head;
int tail;
}Data;
Data queue;
void init()
{
queue.head = queue.tail = -1;
}
int kosong()
{
if(queue.head==-1)
{
return 1;
}
else
{
return 0;
}
}
int penuh()
{
if(queue.tail==20-1)
{
return 1;
}
else
{ return 0;
}
}
void input()
{
char data;
cout <<"Masukkan Data "; cin >>data;
if(penuh()==0)
{
queue.tail++;
queue.data[queue.tail]=data;
cout<<"TERSIMPAN"<
else
{
cout <<"DATA SUDAH PENUH";
}
}
int keluar()
{
int i;
int x=queue.data[queue.head+1];
for(i=queue.head;i
queue.data[i]=queue.data[i+1];
}
queue.tail--;
cout <<" DATA DI KELUARKAN"<
}
void hapus()
{
init();
cout <<"Data telah dikosongkan";
}
void tampil()
{
if(kosong()==0)
{
for(int i=queue.head+1;i<=queue.tail;i++)
{
cout <
else
{
cout <<"DATA MASIH KOSONG";
}
}
main()
{
int pil;
cout<<"MBF"<
{
cout<<"\n\n1. Masukkan Data"<
cout<
{
case 1:
{
input();
break;
}
case 2:
{
keluar();
break;
}
case 3:
{
hapus();
break;
}
case 4:
{
tampil();
break;
}
case 5:
{
cout<
default :
{
cout<<"\t\tTidak ada dalam pilihan"<
}
}
while(pil>=1 && pil<= 4);
}
Sumber : Perkuliahan
Anda baru saja membaca artikel yang berkategori Contoh Program C++ Queue /
Kuliah Informatika /
Struktur Data
dengan judul Contoh Program C++ Queue. Anda bisa bookmark halaman ini dengan URL https://aina-tunk.blogspot.com/2012/12/contoh-program-c-queue.html. Terima kasih!
Ditulis oleh:
Tunk-Tunk - Jumat, 28 Desember 2012
Makasih :)
BalasHapus