1 / 23

ANTRIAN

ANTRIAN. Latifah Rifani. ILUSTRASI. Contoh antrian : Antrian printer Antrian tiket bioskop Antrian pada kasir sebuah bank. Ketika seorang pelanggan datang , akan menuju ke belakang dari antrian. Setelah pelanggan dilayani, antrian yang berada di depan akan maju. PENGERTIAN.

Download Presentation

ANTRIAN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ANTRIAN LatifahRifani

  2. ILUSTRASI • Contoh antrian : • Antrian printer • Antriantiketbioskop • Antrianpadakasirsebuah bank. Ketikaseorangpelanggandatang, akanmenujukebelakangdari antrian. Setelah pelanggan dilayani, antrian yang berada di depan akan maju.

  3. PENGERTIAN • Queue (antrian) adalah struktur data dimana proses pengambilan dan penambahan element dilakukan pada ujung yang berbeda. • Queue mengikuti konsep FIFO. • FIFO (First In First Out) : elemen yang pertama masuk akan menjadi elemen yang pertama kali keluar.

  4. QUEUE DAN STACK • Karakteristik yang membedakan queue (antrian) dari stack adalahcaramenyimpandanmengambil data denganstruktur first in first out (FIFO). • Hal iniberartielemenpertama yang ditempat-kanpada queue adalah yang pertamadipindahkan.

  5. ENQUEUE • Enqueue : yaituproses penambahan elemen pada queue. • Elemen ditempatkan pada ujung (tail)

  6. DEQUEUE • Dequeue yaituproses pengambilan elemen pada queue. • Memindahkanelemendarikepala (head) sebuah queue.

  7. Penambahan dilakukan pada bagian belakang. Sedangkan pengambilan dilakukan pada bagian depan (element yang pertama masuk). Queue dequeue enqueue

  8. ILUSTRASI GAMBAR PROSES A B QUEUE A B C D ENQUEUE C D DEQUEUE

  9. KARAKTERISTIK QUEUE • Elemenantrianyaitu item-item data yang terdapatdielemenantrian • Front • Rear • Jumlahelemenpadaantrian (Count) • Status antrian

  10. FRONT DAN REAR • Front : pointer bantu yang digunakan untuk menunjuk element yang paling depan. • Rear : pointer bantu yang digunakan untuk menunjuk element yang paling belakang. Queue Dequeue Front Enqueue Rear

  11. STATUS ANTRIAN

  12. PENUH • Bilaelemenpadaantrianmencapaikapasitasmaksimumantrian. • Padakondisiini, tidakmungkindilakukanpenambahankeantrian. • Penambahanelemenmenyebabkankondisikesalahan Overflow.

  13. KOSONG • Bilatidakadaelemenpadaantrian. • Padakondisiini, tidakmungkindilakukanpengambilanelemendariantrian. • Pengambilanelemenmenyebabkankondisikesalahan Overflow.

  14. Queue bergunauntukmenyimpanpekerjaanyang tertunda.

  15. GAMBARAN PROSES QUEUE (ANTRIAN)

  16. OPERASI PADA QUEUE • Deklarasi • Inisialisasi • Cek kosong • Cek penuh • Penambahan • Pengambilan • Pengaksesan

  17. DEKLARASI • Proses yang harus dilakukan pertama kali adalah deklarasi/menyiapkan tempat. • Langkah yang harus dilakukan adalah : • Deklarasi class • Deklarasi struktur data (menggunakan array atau linked list) • Deklarasi pointer front dan rear • Deklarasi variabel size untuk menyimpan besar array. • Deklarasi variabel jumlah untuk mengetahui banyak item yang disimpan pada queue.

  18. INISIALISASI • Merupakan proses pemberian nilai awal. • Pada Array : • Pembentukan obyek array beserta ukurannya. antrian= new int[10]; (pembentukan obyek array yang memiliki 10 element, dan alamat obyek akan disimpan pada variabel bernama antrian) • Pemberian nilai awal pada variabel front=0 dan belakang=-1. front = 0; rear=-1;

  19. Pada Linked List: Proses inisialisasi dilakukan dengan memberikan nilai awal pada variabel head, tail front dan rear dengan nilai null. head = tail = front=rear= null;

  20. CEK KOSONG (ISEMPTY) • Operasi yang digunakan untuk mengecek kondisi queue dalam keadaan kosong. • Pada array : menggunakan pengecekan pada variabel jumlah_item. Jika nilainya = 0 berarti queue dalam kondisi kosong. • Pada linked list : dapat menggunakan pengecekan front atau rear jika nilainya null berarti queue kosong. • Operasi ini harus dapat mengembalikan nilai true jika queu kosong dan false jika sebaliknya.

  21. CEK PENUH (ISFULL) • Operasi yang hanya dapat diterapkan pada queue yang menggunakan array. • Operasi ini digunakan untuk mengecek kondisi queue dalam keadaan penuh. • Caranya : melihat nilai pada variabel jumlah item. Jika nilainya = size-1 (dimana size adalah ukuran array) maka dapat diindikasikan queue dalam kondisi penuh. • Operasi ini harus dapat mengembalikan nilai true jika queue penuh dan false jika sebaliknya.

  22. ANTRIAN BERPRIORITAS • Dalamantrian yang telahdibahassebelum, semuaelemen yang masukdalamantriandianggapmempunyaiprioritas yang sama, sehinggaelemen yang masuklebihdahuluakandiproseslebihdahulu. • Dalampraktek, elemen-elemen yang akanmasukdalamsuatuantrianada yang dikatakanmempunyaiprioritas yang lebihtinggidibanding yang lain.

  23. Antrian yang demikianinidisebutdenganantrianberprioritas (priority queue).

More Related