1 / 25

Queue

Queue. Operasi pada Queue. Deklarasi Inisialisasi Cek kosong Cek penuh Penambahan Pengambilan Pengaksesan. (1) Deklarasi. Proses yang harus dilakukan pertama kali adalah deklarasi/menyiapkan tempat. Langkah yang harus dilakukan adalah : Deklarasi class

becky
Download Presentation

Queue

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. Queue

  2. Operasi pada Queue • Deklarasi • Inisialisasi • Cek kosong • Cek penuh • Penambahan • Pengambilan • Pengaksesan

  3. (1) 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

  4. Deklarasi Queue dengan Linked-list • Pembuatan class queue contoh : 2. Pembuatan class Node 3. Pembuatan variabel head, tail, front dan rear bertipe Node. Ketiga variabel ini dideklarasikan pada class queue Node head,tail,front, rear;

  5. Contoh Class Node

  6. Program Deklarasi Queue (QueueLinkedList.java)

  7. (2) Inisialisasi • 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;

  8. Program Inisialisasi Queue (Linked List)

  9. (3) Cek Kosong • Operasi yang digunakan untuk mengecek kondisi queue dalam keadaan kosong. • Pada linked list : dapat menggunakan pengecekan front atau rear jika nilainya null berarti queue kosong. • Operasi ini harus dapat mengembalikan nilai true jika queue kosong dan false jika sebaliknya.

  10. Program “isEmpty” Queue (Linked List) booleanisEmpty(){ return (rear==null); }

  11. (6) Operasi Dequeue • Dequeue adalah proses pengambilan data pada queue. • Ketika dequeue terjadi, element pada queue akan berkurang, yaitu element yang pertama kali ditambahkan. • Pada linked list : front akan menunjuk pada node yang ditunjuk oleh head setelah operasi remove.

  12. (5) Operasi POP...........(lanjutan) • Langkah-langkah : • Pengecekan queue dalam kondisi kosong dengan memanggil method isEmpty(). • Data dari element yang diambil akan menjadi return value (nilai yang dikembalikan) • Perubahan nilai pada variabel front dan rear

  13. Program Dequeue (Linked List)

  14. Program removeFirst

  15. (6) Operasi Enqueue • Enqueue adalah proses penambahan element pada queue. • Ketika enqueue terjadi, element pada queue akan bertambah 1. • Posisi pointer rear akan bergeser menunjuk pada element baru yang ditambahkan. • Pada linked list : rear akan menunjuk ke node baru yang ditunjuk oleh tail.

  16. (6) Operasi Enqueue...........(lanjutan) • Langkah-langkah : • Penambahan element baru pada bagian belakang queue. • Perubahan posisi rear.

  17. Program Enqueue (Linked List)

  18. Program addLast

  19. (7) Operasi peek • Peek pada queue adalah proses pengaksesan element yang ditunjuk oleh front (yaitu element yang pertama kali ditambahkan). • Operasi ini berbeda dengan enqueue karena tidak disertai dengan penghapusan data yang ada hanya pengaksesan (pengembalian data saja).

  20. Program Peek (Linked List)

  21. PRIORITY QUEUE(AntrianBerprioritas) AntrianBerprioritasadalahhimpunanelemen yang setiapelemennyadiberikantingkatprioritastertentu, danurutanpemrosesanelemennyadidasarkanatasprioritastersebutsbb: • Elemen yang prioritasnyalebihtinggidiproseslebihdulu. • Duaelemendenganprioritas yang samadiprosesberdasarkanurutankedatangannya, yaitu yang datanglebihduludiproseslebihdulu (FIFO).

  22. PRIORITY QUEUE denganONE-WAY LIST Representasiantrianberprioritasantara lain dilakukandengan one-way list, sbb: • Setiapsimpulmemiliki 2 field, yaitu: INF (informasi)danPRN (nomorprioritas) • Simpul X mendahuluisimpul Y dalam list : - jikaprioritas X lebihtinggidaripadaprioritas Y - jikaprioritaskeduanyasama, tetapi X lebihdulumasukkedalamantrian.

  23. PRIORITY QUEUE with One-Way List Urutankedatangan START 4

  24. PRIORITY QUEUE with One-Way List START

  25. Tugas • Buatlahsimulasiantrian teller di bank . Apabila bank mempunyai 2 teller yang bertugasmelayaninasabah. Setiapadanasabahbarumasukakanmengambilnomerantrian yang disesuaikanantrian paling pendekantara teller 1 atau teller 2. apabilajumlahantriansamamakaakanmengantridi teller 1.Kalau misalnyanasabahmempunyai priority card makanasabahtersebutharusdidahulukan.

More Related