0% menganggap dokumen ini bermanfaat (0 suara)
243 tayangan3 halaman

Struktur Data - Queue

Dokumen tersebut membahas tentang struktur data antrian (queue) yang menyimpan data dengan konsep FIFO (pertama masuk, pertama keluar). Terdapat dua operasi utama pada queue yaitu enqueue untuk menambahkan elemen dan dequeue untuk menghapus elemen. Queue dapat diimplementasikan menggunakan array maupun linked list.

Diunggah oleh

Salsabilla Aulia
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
243 tayangan3 halaman

Struktur Data - Queue

Dokumen tersebut membahas tentang struktur data antrian (queue) yang menyimpan data dengan konsep FIFO (pertama masuk, pertama keluar). Terdapat dua operasi utama pada queue yaitu enqueue untuk menambahkan elemen dan dequeue untuk menghapus elemen. Queue dapat diimplementasikan menggunakan array maupun linked list.

Diunggah oleh

Salsabilla Aulia
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 3

Nama : Aulia Salsabilla

NIM : 222011592
Kelas : 2KS5
Kode : SV28P

RESPONSI TEORI STRUKTUR DATA #7


QUEUE (ANTRIAN)

A. PENGERTIAN
Konsep queue berbanding terbalik dengan stack. Queue menyimpan data dengan
konsep FIFO (Fisrt In First Out), data yang masuk paling awal akan keluar paling awal atau
LILO (Last In Last Out). Selain itu, queue mempunyai dua jalan
STACK QUEUE
LIFO (Last in Last FIFO
Hanya ada satu end yaitu head (front) Ada dua end yaitu head (front) dan tail (rear)
Penambahan dan penghapusan elemen Penambahan elemen dilakukan melalui tail
dilakukan melalui head (rear), penghapusan dilakukan melalui head
(front)

B. OPERASI PADA QUEUE


1. Enqueue : Operasi penambahan satu elemen baru ke dalam queue (antrian)
2. Dequeue : Operasi penghapusan satu elemen di dalam queue (antrian)

C. IMPLEMENTASI QUEUE
1. Queue Menggunakan Array
a. Deklarasikan stack QUEUE sebagai Array dengan ukuran N (kapitas queue)
DEKLARASI

#define N 50
int QUEUE [N], rear, front;
Catatan : jika front = -1, rear = -1 artinya QUEUE kosong (karena index array mulai dari
0)
b. Buat fungsi untuk display (menampilkan), enqueue (menambahakan), dan dequeue
(menghapus) elemen.
DISPLAY

void Display()
{
if(rear = -1) {
printf("ANTRIAN KOSONG"); }
else {
printf("DAFTAR ANTRIAN : \n");
for (int i = front; i<=rear; i++) {
printf("%d\n", QUEUE [i]); }
}
}

ENQUEUE

/*Menambahkan Elemen*/
void Enqueue(int item)
{
if(rear == N-1) {
printf ("ANTRIAN PENUH");
return; }
if (front = -1)
/*Jika antrian kosong dan ditambahkan elemen baru*/
/*maka elemen tersebut berada pada front=rear=0*/
front = 0;
rear++;
QUEUE[rear] = item;
}

DEQUEUE

/*Menghapus Elemen*/
void Dequeue (int item)
{
if (rear = -1) {
printf ("ANTRIAN KOSONG");
return; }
if (front==rear)
front = rear = -1;
else {
for (int i = 0; i<rear; i++) {
QUEUE[i] = QUEUE [i+1];}
rear--;
front = 0; }
}

FUNGSI MAIN

int main () {
/*Kosongkan Queue*/
rear = front = -1;
/*Menambahkan elemen 10,20,30,40,50*/
Enqueue(10);
Enqueue(20);
Enqueue(30);
Enqueue(40);
Enqueue(50);
/*Menghapus elemen 10,20*/
Dequeue(10);
Dequeue(20);
/*Menampilkan elemen yang tersisa*/
Display();
/*Menampilkan indeks front dan rear*/
printf("\n\n%d %d", front, rear); }

2. Queue Menggunakan Linked List


1. Deklarasikan elemen dari antrian dengan mendefinisikan node structure linked list
DEKLARASI

struct node {
int data;
struct node *next; };
typedef struct node* item;

2. Buat structure queue untuk menyimpan jumlah node dalam linked list, node front, dan
rear
STRUCT PENYIMPAN JUMLAH NODE

struct queue {
int count;
item front;
item rear; };
typedef struct queue* antrian;

Anda mungkin juga menyukai