SlideShare a Scribd company logo
1 of 26
QUEUE (ANTRIAN)
Sesi 5
Kegiatan Pembelajaran
Tujuan Pembelajaran
Materi
Tugas
2
Hal. 3
Hal. 4
Hal. 26
Tujuan Pembelajaran
• Mahasiswa mampu menjelaskan pengertian
queue
• Mahasiswa mampu menjelaskan dan
menunjukkan cara pembuatan queue,
operasi push dan pop pada array
• Mahasiswa mampu menjelaskan dan
menunjukkan program queue dengan array
•
3
4
• Bersifat First In First Out (FIFO)
artinya : Elemen yang pertama masuk ke antrian
akan keluar pertama kalinya
Queue
Queue Linear Array
5
Queue Circular Array
jenis
6
Queue Linier Array
• Terdapat satu buah pintu masuk di suatu ujung dan
satu buah pintu keluar di ujung satunya
• Sehingga membutuhkan 2 variabel: Head dan Tail
7
Abstraksi Tipe Data Queue
8
Fungsi Create Queue
Create()
– Untuk menciptakan dan menginisialisasi Queue
– Dengan cara membuat Head dan Tail = -1
9
Fungsi Queue Kosong
• IsEmpty()
– Untuk memeriksa apakah Antrian sudah penuh atau
belum
– Dengan cara memeriksa nilai Tail, jika Tail = -1 maka
empty
– Kita tidak memeriksa Head, karena Head adalah tanda
untuk kepala antrian (elemen pertama dalam antrian)
yang tidak akan berubah-ubah
– Pergerakan pada Antrian terjadi dengan penambahan
elemen Antrian kebelakang, yaitu menggunakan nilai
Tail
10
Fungsi Queue Kosong (2)
11
Fungsi Queue Penuh
Fungis IsFull
– Untuk mengecek apakah Antrian sudah penuh atau belum
– Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena
MAX-1 adalah batas elemen array pada C) berarti sudah penuh
12
Fungsi Enqueue
Enqueue
– Untuk menambahkan elemen ke dalam Antrian,
penambahan elemen selalu ditambahkan di
elemen paling belakang
– Penambahan elemen selalu menggerakan
variabel Tail dengan cara increment counter
Tail terlebih dahulu
13
Ilustrasi Fungsi Enqueue
14
Fungsi Dequeue
• Dequeue()
– Digunakan untuk menghapus elemen
terdepan/pertama (head) dari Antrian
– Dengan cara menggeser semua elemen antrian
kedepan dan mengurangi Tail dgn 1
– Penggeseran dilakukan dengan menggunakan
looping
15
Ilustrasi Fungsi Dequeue
16
Fungsi Clear
• Clear()
– Untuk menghapus elemen-elemen Antrian
dengan cara membuat Tail dan Head = -1
– Penghapusan elemen-elemen Antrian
sebenarnya tidak menghapus arraynya, namun
hanya mengeset indeks pengaksesan-nya ke
nilai -1 sehingga elemen-elemen Antrian tidak
lagi terbaca
17
Ilustrasi Fungsi Clear
18
Fungsi Menampilkan Data Queue
• Tampil()
– Untuk menampilkan nilai-nilai elemen Antrian
– Menggunakan looping dari head s/d tail
19
Queue Circular Array
• Circular array
merupakan array yang
dapat diakses mulai
dari sembarang indeks
(indeks awal) ke arah
indeks terakhir
(maksimum array),
kemudian memutar
hingga kembali ke
indeks awal
20
Ilustrasi Queue Circular Array
Queue kosong
A, B, C, D dimasukkan ke
Queue
A, B dihapus dari Queue
E, F dimasukkan ke Queue
C, D dihapus dari Queue
21
Fungsi Inisialisasi
• Mendeklarasikan queue kosong dengan
memberi
– nilai awal = 0
– nilai akhir = MAX - 1
void init(void)
{
antri.awal = 0;
antri.akhir = MAX – 1;
}
22
Fungsi Full
• Mengecek kondisi queue dalam keadaan
penuh. Queue dikatakan penuh bila tempat
yang masih kosong tinggal satu
int isFull(void)
{
if(((antri.akhir+2)%MAX) == antri.awal)
return (true);
else
return(false);
}
23
Fungsi Empty
• Mengecek kondisi queue dalam keadaan
kosong, apabila posisi akhir dan awal masih
bersebelahan dan posisi akhir lebih besar
dari posisi awal, maka queue dalam keadaan
kosong
int isEmpty(void)
{
if(((antri.akhir+1)%MAX) == antri.awal)
return (true);
else
return(false);
}
24
Fungsi InQueue
• Langkah-langkah InQueue
– Geser posisi belakang
– Masukkan elemen baru
– Depan tidak berubah, belakang berubah
void InQueue(char elemen)
{
if(isFull() != true)
{
antri.akhir = (antri.akhir+1)%MAX;
antri.info[antri.akhir] = elemen;
}
else
printf(“Queue overflown”);
}
25
Fungsi DeQueue
• Langkah-langkah DeQueue
– Ambil elemen paling depan
– Geser posisi depan
– Belakang tetap, depan berubah
char DeQueue(void)
{
char isi;
int I;
if(isEmpty() != true)
{
isi = antri.info[antri.awal];
antri.awal = (antri.awal+1)%MAX;
return(isi);
}
else
printf(“Queue underflown”);
}
26
Tugas
Buatlah Program Algoritma Queue dengan
1. Menambahkan fungsi untuk mencari suatu
elemen dalam queue
2. Menambahkan fungsi untuk mengedit suatu
elemen dalam queue
3. Mencari nilai total, rata-rata, terbesar dan
terkecil dari elemen-elemen queue dalam
fungsi tersendiri

More Related Content

What's hot

Algoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrianAlgoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrianGeorgius Rinaldo
 
Materi Struktur data QUEUE
Materi Struktur data QUEUEMateri Struktur data QUEUE
Materi Struktur data QUEUEMeta N
 
Stack & queue by stanly maarende
Stack & queue by stanly maarendeStack & queue by stanly maarende
Stack & queue by stanly maarendeSten Maarende
 
Bab 8-stack-dan-queue
Bab 8-stack-dan-queueBab 8-stack-dan-queue
Bab 8-stack-dan-queueRazik Akamal
 
Algoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - AntrianAlgoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - AntrianKuliahKita
 
Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)Fahuda E
 
Algoritma dan Struktur Data - tumpukan
Algoritma dan Struktur Data - tumpukanAlgoritma dan Struktur Data - tumpukan
Algoritma dan Struktur Data - tumpukanGeorgius Rinaldo
 
Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)Fahuda E
 
Stack tumpukan
Stack tumpukan Stack tumpukan
Stack tumpukan biedoen
 

What's hot (18)

Queue
Queue Queue
Queue
 
Algoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrianAlgoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrian
 
Tistrukdat4
Tistrukdat4Tistrukdat4
Tistrukdat4
 
Queue
QueueQueue
Queue
 
Materi Struktur data QUEUE
Materi Struktur data QUEUEMateri Struktur data QUEUE
Materi Struktur data QUEUE
 
Stack & queue by stanly maarende
Stack & queue by stanly maarendeStack & queue by stanly maarende
Stack & queue by stanly maarende
 
5 STACK
5 STACK5 STACK
5 STACK
 
Pertemuan 6 ok
Pertemuan 6 okPertemuan 6 ok
Pertemuan 6 ok
 
Queue antrian
Queue antrian Queue antrian
Queue antrian
 
Bab 8-stack-dan-queue
Bab 8-stack-dan-queueBab 8-stack-dan-queue
Bab 8-stack-dan-queue
 
Perkuliahan ke 4 Struktur Data
Perkuliahan ke 4 Struktur DataPerkuliahan ke 4 Struktur Data
Perkuliahan ke 4 Struktur Data
 
Algoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - AntrianAlgoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - Antrian
 
Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)
 
Algoritma dan Struktur Data - tumpukan
Algoritma dan Struktur Data - tumpukanAlgoritma dan Struktur Data - tumpukan
Algoritma dan Struktur Data - tumpukan
 
Queue
QueueQueue
Queue
 
Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)
 
2894065
28940652894065
2894065
 
Stack tumpukan
Stack tumpukan Stack tumpukan
Stack tumpukan
 

Similar to Bab 4 queue (antrian)

Similar to Bab 4 queue (antrian) (19)

Algoritma dan Struktur Data - Queue
Algoritma dan Struktur Data - QueueAlgoritma dan Struktur Data - Queue
Algoritma dan Struktur Data - Queue
 
Stack_Queue.pdf
Stack_Queue.pdfStack_Queue.pdf
Stack_Queue.pdf
 
Struktur data
Struktur dataStruktur data
Struktur data
 
30707_SD6-Queue (Antrian).pdf
30707_SD6-Queue (Antrian).pdf30707_SD6-Queue (Antrian).pdf
30707_SD6-Queue (Antrian).pdf
 
Queue antrian
Queue antrian Queue antrian
Queue antrian
 
7. Queue (Struktur Data)
7. Queue (Struktur Data)7. Queue (Struktur Data)
7. Queue (Struktur Data)
 
Logika & algo bab array
Logika & algo bab arrayLogika & algo bab array
Logika & algo bab array
 
Queue
QueueQueue
Queue
 
Stack tumpukan
Stack tumpukan Stack tumpukan
Stack tumpukan
 
Slide minggu 2 pertemuan 2 (struktur data1)
Slide minggu 2 pertemuan 2 (struktur data1)Slide minggu 2 pertemuan 2 (struktur data1)
Slide minggu 2 pertemuan 2 (struktur data1)
 
Bab 4 stack_tumpukan_
Bab 4 stack_tumpukan_Bab 4 stack_tumpukan_
Bab 4 stack_tumpukan_
 
Array 1
Array 1Array 1
Array 1
 
Chapter 4b queue
Chapter 4b   queueChapter 4b   queue
Chapter 4b queue
 
Chapter 4 stack and queue
Chapter 4   stack and queueChapter 4   stack and queue
Chapter 4 stack and queue
 
Struktur data
Struktur dataStruktur data
Struktur data
 
STACK.pptx
STACK.pptxSTACK.pptx
STACK.pptx
 
Algoritma dan Struktur Data - Stack
Algoritma dan Struktur Data - StackAlgoritma dan Struktur Data - Stack
Algoritma dan Struktur Data - Stack
 
Topik 11 Array
Topik 11 ArrayTopik 11 Array
Topik 11 Array
 
2. Pendahuluan array.pdf
2. Pendahuluan array.pdf2. Pendahuluan array.pdf
2. Pendahuluan array.pdf
 

More from Fahuda E

Bab 2 sorting array (1)
Bab 2 sorting array (1)Bab 2 sorting array (1)
Bab 2 sorting array (1)Fahuda E
 
Bab 3 searching array (1)
Bab 3 searching array (1)Bab 3 searching array (1)
Bab 3 searching array (1)Fahuda E
 
Materi 2: komponen game
Materi 2: komponen gameMateri 2: komponen game
Materi 2: komponen gameFahuda E
 
Materi 1: gdlc
Materi 1: gdlcMateri 1: gdlc
Materi 1: gdlcFahuda E
 
Materi 5: sprite
Materi 5: spriteMateri 5: sprite
Materi 5: spriteFahuda E
 
Materi 4: lod
Materi 4: lodMateri 4: lod
Materi 4: lodFahuda E
 
Materi 3 rendering graphic dan game
Materi 3   rendering graphic dan gameMateri 3   rendering graphic dan game
Materi 3 rendering graphic dan gameFahuda E
 
Materi 7 perangkat lunak sistem
Materi 7 perangkat lunak sistemMateri 7 perangkat lunak sistem
Materi 7 perangkat lunak sistemFahuda E
 
Materi 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiMateri 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiFahuda E
 
Materi 5 penyimpanan eksternal
Materi 5 penyimpanan eksternalMateri 5 penyimpanan eksternal
Materi 5 penyimpanan eksternalFahuda E
 
Materi 4 peranti keluaran
Materi 4 peranti keluaranMateri 4 peranti keluaran
Materi 4 peranti keluaranFahuda E
 
Materi 3 peranti masukan
Materi 3 peranti masukanMateri 3 peranti masukan
Materi 3 peranti masukanFahuda E
 
Rules tugas besar asd
Rules tugas besar asdRules tugas besar asd
Rules tugas besar asdFahuda E
 
Bab 5 linked list
Bab 5 linked listBab 5 linked list
Bab 5 linked listFahuda E
 
Bab 2 sorting array
Bab 2 sorting arrayBab 2 sorting array
Bab 2 sorting arrayFahuda E
 
Bab 3 searching array
Bab 3 searching arrayBab 3 searching array
Bab 3 searching arrayFahuda E
 
Abstraksi tipe data
Abstraksi tipe dataAbstraksi tipe data
Abstraksi tipe dataFahuda E
 

More from Fahuda E (20)

Bab 2 sorting array (1)
Bab 2 sorting array (1)Bab 2 sorting array (1)
Bab 2 sorting array (1)
 
Bab 3 searching array (1)
Bab 3 searching array (1)Bab 3 searching array (1)
Bab 3 searching array (1)
 
Materi 2: komponen game
Materi 2: komponen gameMateri 2: komponen game
Materi 2: komponen game
 
Materi 1: gdlc
Materi 1: gdlcMateri 1: gdlc
Materi 1: gdlc
 
Materi 5: sprite
Materi 5: spriteMateri 5: sprite
Materi 5: sprite
 
Materi 4: lod
Materi 4: lodMateri 4: lod
Materi 4: lod
 
Materi 3 rendering graphic dan game
Materi 3   rendering graphic dan gameMateri 3   rendering graphic dan game
Materi 3 rendering graphic dan game
 
Materi 7 perangkat lunak sistem
Materi 7 perangkat lunak sistemMateri 7 perangkat lunak sistem
Materi 7 perangkat lunak sistem
 
Materi 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasiMateri 6 perangkat lunak aplikasi
Materi 6 perangkat lunak aplikasi
 
Materi 5 penyimpanan eksternal
Materi 5 penyimpanan eksternalMateri 5 penyimpanan eksternal
Materi 5 penyimpanan eksternal
 
Materi 4 peranti keluaran
Materi 4 peranti keluaranMateri 4 peranti keluaran
Materi 4 peranti keluaran
 
Materi 3 peranti masukan
Materi 3 peranti masukanMateri 3 peranti masukan
Materi 3 peranti masukan
 
Struct
StructStruct
Struct
 
Rules tugas besar asd
Rules tugas besar asdRules tugas besar asd
Rules tugas besar asd
 
Pointer
PointerPointer
Pointer
 
Bab 5 linked list
Bab 5 linked listBab 5 linked list
Bab 5 linked list
 
Bab 2 sorting array
Bab 2 sorting arrayBab 2 sorting array
Bab 2 sorting array
 
Array
ArrayArray
Array
 
Bab 3 searching array
Bab 3 searching arrayBab 3 searching array
Bab 3 searching array
 
Abstraksi tipe data
Abstraksi tipe dataAbstraksi tipe data
Abstraksi tipe data
 

Recently uploaded

Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfSitiJulaeha820399
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAAndiCoc
 
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptxGiftaJewela
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxSyaimarChandra1
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxRezaWahyuni6
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfElaAditya
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxawaldarmawan3
 
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfHARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfkustiyantidew94
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASKurniawan Dirham
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptxHendryJulistiyanto
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxRezaWahyuni6
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptArkhaRega1
 
soal AKM Mata Pelajaran PPKN kelas .pptx
soal AKM Mata Pelajaran PPKN kelas .pptxsoal AKM Mata Pelajaran PPKN kelas .pptx
soal AKM Mata Pelajaran PPKN kelas .pptxazhari524
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdftsaniasalftn18
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CAbdiera
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapsefrida3
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxmawan5982
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Abdiera
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfDimanWr1
 

Recently uploaded (20)

Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdfModul 1.2.a.8 Koneksi antar materi 1.2.pdf
Modul 1.2.a.8 Koneksi antar materi 1.2.pdf
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
 
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx421783639-ppt-overdosis-dan-keracunan-pptx.pptx
421783639-ppt-overdosis-dan-keracunan-pptx.pptx
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
 
Materi Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptxMateri Pertemuan Materi Pertemuan 7.pptx
Materi Pertemuan Materi Pertemuan 7.pptx
 
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdfTUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
TUGAS GURU PENGGERAK Aksi Nyata Modul 1.1.pdf
 
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptxKONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
KONSEP KEBUTUHAN AKTIVITAS DAN LATIHAN.pptx
 
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdfHARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
HARMONI DALAM EKOSISTEM KELAS V SEKOLAH DASAR.pdf
 
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATASMATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
MATERI EKOSISTEM UNTUK SEKOLAH MENENGAH ATAS
 
442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx442539315-ppt-modul-6-pend-seni-pptx.pptx
442539315-ppt-modul-6-pend-seni-pptx.pptx
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptx
 
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 pptppt-modul-6-pend-seni-di sd kelompok 2 ppt
ppt-modul-6-pend-seni-di sd kelompok 2 ppt
 
soal AKM Mata Pelajaran PPKN kelas .pptx
soal AKM Mata Pelajaran PPKN kelas .pptxsoal AKM Mata Pelajaran PPKN kelas .pptx
soal AKM Mata Pelajaran PPKN kelas .pptx
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdf
 
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase CModul Ajar Pendidikan Pancasila Kelas 5 Fase C
Modul Ajar Pendidikan Pancasila Kelas 5 Fase C
 
Dinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genapDinamika Hidrosfer geografi kelas X genap
Dinamika Hidrosfer geografi kelas X genap
 
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docxtugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
tugas 1 anak berkebutihan khusus pelajaran semester 6 jawaban tuton 1.docx
 
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
Modul Ajar Biologi Kelas 11 Fase F Kurikulum Merdeka [abdiera.com]
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
 

Bab 4 queue (antrian)

  • 3. Tujuan Pembelajaran • Mahasiswa mampu menjelaskan pengertian queue • Mahasiswa mampu menjelaskan dan menunjukkan cara pembuatan queue, operasi push dan pop pada array • Mahasiswa mampu menjelaskan dan menunjukkan program queue dengan array • 3
  • 4. 4 • Bersifat First In First Out (FIFO) artinya : Elemen yang pertama masuk ke antrian akan keluar pertama kalinya
  • 5. Queue Queue Linear Array 5 Queue Circular Array jenis
  • 6. 6 Queue Linier Array • Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya • Sehingga membutuhkan 2 variabel: Head dan Tail
  • 8. 8 Fungsi Create Queue Create() – Untuk menciptakan dan menginisialisasi Queue – Dengan cara membuat Head dan Tail = -1
  • 9. 9 Fungsi Queue Kosong • IsEmpty() – Untuk memeriksa apakah Antrian sudah penuh atau belum – Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty – Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian (elemen pertama dalam antrian) yang tidak akan berubah-ubah – Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian kebelakang, yaitu menggunakan nilai Tail
  • 11. 11 Fungsi Queue Penuh Fungis IsFull – Untuk mengecek apakah Antrian sudah penuh atau belum – Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh
  • 12. 12 Fungsi Enqueue Enqueue – Untuk menambahkan elemen ke dalam Antrian, penambahan elemen selalu ditambahkan di elemen paling belakang – Penambahan elemen selalu menggerakan variabel Tail dengan cara increment counter Tail terlebih dahulu
  • 14. 14 Fungsi Dequeue • Dequeue() – Digunakan untuk menghapus elemen terdepan/pertama (head) dari Antrian – Dengan cara menggeser semua elemen antrian kedepan dan mengurangi Tail dgn 1 – Penggeseran dilakukan dengan menggunakan looping
  • 16. 16 Fungsi Clear • Clear() – Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head = -1 – Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen Antrian tidak lagi terbaca
  • 18. 18 Fungsi Menampilkan Data Queue • Tampil() – Untuk menampilkan nilai-nilai elemen Antrian – Menggunakan looping dari head s/d tail
  • 19. 19 Queue Circular Array • Circular array merupakan array yang dapat diakses mulai dari sembarang indeks (indeks awal) ke arah indeks terakhir (maksimum array), kemudian memutar hingga kembali ke indeks awal
  • 20. 20 Ilustrasi Queue Circular Array Queue kosong A, B, C, D dimasukkan ke Queue A, B dihapus dari Queue E, F dimasukkan ke Queue C, D dihapus dari Queue
  • 21. 21 Fungsi Inisialisasi • Mendeklarasikan queue kosong dengan memberi – nilai awal = 0 – nilai akhir = MAX - 1 void init(void) { antri.awal = 0; antri.akhir = MAX – 1; }
  • 22. 22 Fungsi Full • Mengecek kondisi queue dalam keadaan penuh. Queue dikatakan penuh bila tempat yang masih kosong tinggal satu int isFull(void) { if(((antri.akhir+2)%MAX) == antri.awal) return (true); else return(false); }
  • 23. 23 Fungsi Empty • Mengecek kondisi queue dalam keadaan kosong, apabila posisi akhir dan awal masih bersebelahan dan posisi akhir lebih besar dari posisi awal, maka queue dalam keadaan kosong int isEmpty(void) { if(((antri.akhir+1)%MAX) == antri.awal) return (true); else return(false); }
  • 24. 24 Fungsi InQueue • Langkah-langkah InQueue – Geser posisi belakang – Masukkan elemen baru – Depan tidak berubah, belakang berubah void InQueue(char elemen) { if(isFull() != true) { antri.akhir = (antri.akhir+1)%MAX; antri.info[antri.akhir] = elemen; } else printf(“Queue overflown”); }
  • 25. 25 Fungsi DeQueue • Langkah-langkah DeQueue – Ambil elemen paling depan – Geser posisi depan – Belakang tetap, depan berubah char DeQueue(void) { char isi; int I; if(isEmpty() != true) { isi = antri.info[antri.awal]; antri.awal = (antri.awal+1)%MAX; return(isi); } else printf(“Queue underflown”); }
  • 26. 26 Tugas Buatlah Program Algoritma Queue dengan 1. Menambahkan fungsi untuk mencari suatu elemen dalam queue 2. Menambahkan fungsi untuk mengedit suatu elemen dalam queue 3. Mencari nilai total, rata-rata, terbesar dan terkecil dari elemen-elemen queue dalam fungsi tersendiri