SlideShare a Scribd company logo
1 of 21
Download to read offline
STRUKTUR DATA (4)
queue




        Oleh   M. Kautsar Sophan
Outline

• Definisi Queue / antrian
• Operasi Queue
• Tugas
Definisi Queue (baca:
Kiuiu)

• Konsep penyimpanan data, terdiri dari
  beberapa data, dengan aturan data yang
  baru masuk akan diletakkan di data
  sebelumnya, data yang keluar adalah data
  yang masuk pertama kali
• Data masuk dari pintu depan, data keluar
  dari pintu belakang ( ada 2 pintu)
• FIFO, First in – First Out
Operasi Queue

• Enqueue, memasukkan 1 elemen data ke
  antrian
• Dequeue, mengeluarkan 1 elemen data
  dari antrian
Penyajian Queue

• Array
• Linked List
Queue Dengan Array
• Bersifat FIFO (First In First Out)
• Elemen yang pertama masuk ke antrian akan keluar pertama
  kalinya
• DEQUEUE adalah mengeluarkan satu elemen dari suatu Antrian
• Antrian dapat dibuat dengan menggunakan: Liniear Array dan
  Circular Array
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
Queue (2)




• Operasi-operasi:
Create()
  • Untuk menciptakan dan menginisialisasi Queue
  • Dengan cara membuat Head dan Tail = -1
Queue (3)
Queue (4)

• 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
Queue (5)
Queue (6)

 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
Queue (7)

 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
Queue (8)
Queue (9)

• 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
Queue (10)
Queue (11)

• 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
Queue (12)
Queue (13)

• Tampil()
  • Untuk menampilkan nilai-nilai elemen Antrian
  • Menggunakan looping dari head s/d tail
Tugas

1. Buat program implementasi Queue, dengan
   operasi
  1.   Enqueue
  2.   Dequeue
  3.   Fungsi Cari nilai total, rata-rata, terbesar dan
       terkecil dari elemen-elemen queue.
  4.   Lihat isi elemen Queue
2. Buat program calculator sederhana, dengan
   menghitung formula yang diinputkan:
   contoh : 3*2=6; (4+2)*4=24
Tugas (2)

Petunjuk utk soal no 2
1. Ekspresi ubah ke bentuk postfix
2. Dari Postfix, di evaluasi hasil operasinya,
   lihat panduan algoritma

Tugas dikerjakan tim, 1 tim max 3 orang

More Related Content

What's hot

What's hot (18)

Struktur data pertemuan 11
Struktur data pertemuan 11Struktur data pertemuan 11
Struktur data pertemuan 11
 
2894065
28940652894065
2894065
 
Queue
Queue Queue
Queue
 
Tistrukdat4
Tistrukdat4Tistrukdat4
Tistrukdat4
 
Algoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrianAlgoritma dan Struktur Data - antrian
Algoritma dan Struktur Data - antrian
 
TI-struktur_data-stack_n_queue
TI-struktur_data-stack_n_queueTI-struktur_data-stack_n_queue
TI-struktur_data-stack_n_queue
 
Algoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - AntrianAlgoritma dan Struktur Data - Antrian
Algoritma dan Struktur Data - Antrian
 
Bab 8-stack-dan-queue
Bab 8-stack-dan-queueBab 8-stack-dan-queue
Bab 8-stack-dan-queue
 
Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)Bab 3 stack (tumpukan)
Bab 3 stack (tumpukan)
 
Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)Bab 4 stack (tumpukan)
Bab 4 stack (tumpukan)
 
Queue antrian
Queue antrian Queue antrian
Queue antrian
 
Bab 4 stack_tumpukan_
Bab 4 stack_tumpukan_Bab 4 stack_tumpukan_
Bab 4 stack_tumpukan_
 
Queue
QueueQueue
Queue
 
Stack tumpukan
Stack tumpukan Stack tumpukan
Stack tumpukan
 
Chapter 4b queue
Chapter 4b   queueChapter 4b   queue
Chapter 4b queue
 
5 STACK
5 STACK5 STACK
5 STACK
 
Chapter 4a stack
Chapter 4a   stackChapter 4a   stack
Chapter 4a stack
 
Stack
StackStack
Stack
 

Viewers also liked

Viewers also liked (19)

8 algoprog-pointer
8  algoprog-pointer8  algoprog-pointer
8 algoprog-pointer
 
rekayasa perangkat lunak
rekayasa perangkat lunakrekayasa perangkat lunak
rekayasa perangkat lunak
 
9 10 - sort-pengurutan-data
9 10 - sort-pengurutan-data9 10 - sort-pengurutan-data
9 10 - sort-pengurutan-data
 
3. central prosesing unit
3. central prosesing unit 3. central prosesing unit
3. central prosesing unit
 
14 graph2
14 graph214 graph2
14 graph2
 
1. pengenalan orkom
1. pengenalan orkom 1. pengenalan orkom
1. pengenalan orkom
 
6. memori sekunder
6. memori sekunder6. memori sekunder
6. memori sekunder
 
5. chace memori
5. chace memori5. chace memori
5. chace memori
 
2. sistem komputer
2. sistem komputer 2. sistem komputer
2. sistem komputer
 
3 stack2
3 stack23 stack2
3 stack2
 
7. matherboard & sistem bus
7. matherboard & sistem bus7. matherboard & sistem bus
7. matherboard & sistem bus
 
5 6 single-linked_list
5 6 single-linked_list5 6 single-linked_list
5 6 single-linked_list
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunak
 
8. modul input & output
8. modul input & output8. modul input & output
8. modul input & output
 
11 12 -pengurutan dan-pencarian
11 12 -pengurutan dan-pencarian11 12 -pengurutan dan-pencarian
11 12 -pengurutan dan-pencarian
 
10. bahasa rakitan
10. bahasa rakitan10. bahasa rakitan
10. bahasa rakitan
 
13 graph2
13 graph213 graph2
13 graph2
 
2 array n-matriks
2 array n-matriks2 array n-matriks
2 array n-matriks
 
4. memori komputer
4. memori  komputer4. memori  komputer
4. memori komputer
 

Similar to STRUKTUR DATA QUEUE DAN IMPLEMENTASINYA

Similar to STRUKTUR DATA QUEUE DAN IMPLEMENTASINYA (20)

Queue
QueueQueue
Queue
 
Queue antrian
Queue antrian Queue antrian
Queue antrian
 
Stack & queue by stanly maarende
Stack & queue by stanly maarendeStack & queue by stanly maarende
Stack & queue by stanly maarende
 
Stack_Queue.pdf
Stack_Queue.pdfStack_Queue.pdf
Stack_Queue.pdf
 
Algoritma dan Struktur Data - Queue
Algoritma dan Struktur Data - QueueAlgoritma dan Struktur Data - Queue
Algoritma dan Struktur Data - Queue
 
Queue
QueueQueue
Queue
 
Stack tumpukan
Stack tumpukan Stack tumpukan
Stack tumpukan
 
30707_SD6-Queue (Antrian).pdf
30707_SD6-Queue (Antrian).pdf30707_SD6-Queue (Antrian).pdf
30707_SD6-Queue (Antrian).pdf
 
7. Queue (Struktur Data)
7. Queue (Struktur Data)7. Queue (Struktur Data)
7. Queue (Struktur Data)
 
Struktur data
Struktur dataStruktur data
Struktur data
 
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)
 
Ketoprak_PPT ADT Stack dan Queue.pptx
Ketoprak_PPT ADT Stack dan Queue.pptxKetoprak_PPT ADT Stack dan Queue.pptx
Ketoprak_PPT ADT Stack dan Queue.pptx
 
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
 
7
77
7
 
Topik 11 Array
Topik 11 ArrayTopik 11 Array
Topik 11 Array
 
STACK.pptx
STACK.pptxSTACK.pptx
STACK.pptx
 
Analisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah SortingAnalisis Algoritma Pada Masalah Sorting
Analisis Algoritma Pada Masalah Sorting
 
Resume praktikum 7__queue
Resume praktikum 7__queueResume praktikum 7__queue
Resume praktikum 7__queue
 
Logika & algo bab array
Logika & algo bab arrayLogika & algo bab array
Logika & algo bab array
 

STRUKTUR DATA QUEUE DAN IMPLEMENTASINYA

  • 1. STRUKTUR DATA (4) queue Oleh M. Kautsar Sophan
  • 2. Outline • Definisi Queue / antrian • Operasi Queue • Tugas
  • 3. Definisi Queue (baca: Kiuiu) • Konsep penyimpanan data, terdiri dari beberapa data, dengan aturan data yang baru masuk akan diletakkan di data sebelumnya, data yang keluar adalah data yang masuk pertama kali • Data masuk dari pintu depan, data keluar dari pintu belakang ( ada 2 pintu) • FIFO, First in – First Out
  • 4. Operasi Queue • Enqueue, memasukkan 1 elemen data ke antrian • Dequeue, mengeluarkan 1 elemen data dari antrian
  • 6. Queue Dengan Array • Bersifat FIFO (First In First Out) • Elemen yang pertama masuk ke antrian akan keluar pertama kalinya • DEQUEUE adalah mengeluarkan satu elemen dari suatu Antrian • Antrian dapat dibuat dengan menggunakan: Liniear Array dan Circular Array
  • 7. 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. Queue (2) • Operasi-operasi: Create() • Untuk menciptakan dan menginisialisasi Queue • Dengan cara membuat Head dan Tail = -1
  • 10. Queue (4) • 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
  • 12. Queue (6) 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
  • 13. Queue (7) 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
  • 15. Queue (9) • 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
  • 17. Queue (11) • 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
  • 19. Queue (13) • Tampil() • Untuk menampilkan nilai-nilai elemen Antrian • Menggunakan looping dari head s/d tail
  • 20. Tugas 1. Buat program implementasi Queue, dengan operasi 1. Enqueue 2. Dequeue 3. Fungsi Cari nilai total, rata-rata, terbesar dan terkecil dari elemen-elemen queue. 4. Lihat isi elemen Queue 2. Buat program calculator sederhana, dengan menghitung formula yang diinputkan: contoh : 3*2=6; (4+2)*4=24
  • 21. Tugas (2) Petunjuk utk soal no 2 1. Ekspresi ubah ke bentuk postfix 2. Dari Postfix, di evaluasi hasil operasinya, lihat panduan algoritma Tugas dikerjakan tim, 1 tim max 3 orang