Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

ANTRIAN Farid Wajdi Yusuf Pendidikan Teknik Informatika dan Komputer

Presentasi serupa


Presentasi berjudul: "ANTRIAN Farid Wajdi Yusuf Pendidikan Teknik Informatika dan Komputer"— Transcript presentasi:

1 ANTRIAN Farid Wajdi Yusuf Pendidikan Teknik Informatika dan Komputer
Jurusan Pendidikan Teknik Elektro Fakultas Teknik – Universitas Negeri Makassar

2 Contoh Antrian Contoh antrian : Antrian pada kasir sebuah bank.
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.

3 PERLU DIINGAT Suatu item yang ditambahkan di belakang antrian tidak bisa dihapus sebelum item di depannya dihapus.

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

5 Head Tail:

6 Alat mailbox elektronik (berdasarkan kronologi).
Mesin antrian pada toko atau bank. Proses menunggu untuk run pada prosessor pada sistem komputer.

7 QUEUE DAN STACK Karakteristik yang membedakan queue (antrian) dari stack adalah cara menyimpan dan mengambil data dengan struktur first in first out (FIFO). Hal ini berarti elemen pertama yang ditempat-kan pada queue adalah yang pertama dipindahkan.

8 Enqueue : yaitu proses penambahan elemen pada queue. Elemen ditempatkan pada ujung (tail)

9 Dequeue yaitu proses pengambilan elemen pada queue. Memindahkan elemen dari kepala (head) sebuah queue.

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

11 GAMBAR PROSES A B QUEUE A B C D ENQUEUE C D DEQUEUE

12 ATURAN MEMASUKKAN QUEUE
Kondisi awal ada sebuah queue dan dibuat sebuah elemen baru yang akan dimasukkan ke dalam queue. last first Elemen baru Antrian (queue)

13 Elemen baru dimasukkan ke dalam queue
last first Antrian (queue)

14 Penunjuk last diubah menunjuk ke elemen baru sebagai elemen paling belakang.
first Antrian (queue)

15 ATURAN MENGELUARKAN ELEMEN
Kondisi awal ada sebuah queue yang berisi elemen. last first Antrian (queue)

16 Penunjuk first diubah ke elemen di belakang elemen paling depan.
last first Antrian (queue)

17 Elemen paling depan dikeluarkan dari queue.
last first keluar Antrian (queue)

18 ANTRIAN BERPRIORITAS Yaitu mengeluarkan elemen dari queue berdasarkan prioritas pada elemen itu. Elemen pada antrian berprioritas harus menyimpan nilai prioritas pada setiap elemen.

19 Untuk memasukkan elemennya, tidak harus melalui sisi belakang antrian, tetapi disisipkan dan diurutkan berdasarkan prioritas elemen.

20 KETENTUAN QUEUE BERPRIORITAS
Elemen yang memiliki prioritas lebih tinggi akan lebih dahulu keluar dari queue. Jika ada dua elemen yang memiliki prioritas sama, maka yang akan keluar terlebih dahulu dari antrian adalah yang terlebih dahulu masuk ke dalam antrian.

21 OPERASIPADA ANTRIAN BERPRIORITAS
Kondisi awal ada sebuah antrian berprioritas yang berisi elemen dan ada sebuah elemen baru yang akan dimasukkan ke dalam antrian. last baru Antrian (queue) 1 2 4 6 7 9 3 first

22 Mencari tempat yang sesuai untuk elemen baru sesuai dengan prioritas elemen baru pada antrian.
Tempat elemen baru Di belakang elemen 2 last first baru 9 7 6 4 2 1 3 Antrian (queue)

23 Menyisipkan elemen baru ke dalam antrian.
last first 9 7 6 4 3 2 1 Antrian (queue)

24 Bagaimana dengan operasi mengeluarkan sebuah elemen dari antrian berprioritas???

25 KARAKTERISTIK QUEUE Elemen antrian yaitu item-item data yang terdapat di elemen antrian Front Rear Jumlah elemen pada antrian (Count) Status antrian

26 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 Enqueue Rear Dequeue Front

27 Status antrian

28 Penuh Bila elemen pada antrian mencapai kapasitas maksimum antrian.
Pada kondisi ini, tidak mungkin dilakukan penambahan ke antrian. Penambahan elemen menyebabkan kondisi kesalahan Overflow.

29 Kosong Bila tidak ada elemen pada antrian.
Pada kondisi ini, tidak mungkin dilakukan pengambilan elemen dari antrian. Pengambilan elemen menyebabkan kondisi kesalahan Underflow.

30 Queue berguna untuk menyimpan pekerjaan yang tertunda.

31 GAMBARAN PROSES QUEUE (ANTRIAN)

32 Deklarasi Deklarasi Inisialisasi Cek kosong Cek penuh Pengambilan
Penambahan Pengaksesan

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

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

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

36 ANTRIAN BERPRIORITAS Dalam antrian yang telah dibahas sebelum, semua elemen yang masuk dalam antrian dianggap mempunyai prioritas yang sama, sehingga elemen yang masuk lebih dahulu akan diproses lebih dahulu.

37 Dalam praktek, elemen-elemen yang akan masuk dalam suatu antrian ada yang dikatakan mempunyai prioritas yang lebih tinggi dibanding yang lain. Antrian yang demikian ini disebut dengan antrian berprioritas (priority queue).

38 Salah satu cara untuk mengimplementasikan antrian berprioritas adalah dengan menggunakan linked list. Jika kita menggunakan linked list, khususnya single linked list atau double linked list, maka ada ketentuan lain yang perlu diperhatikan, yaitu:

39 Setiap node dari linked list terdiri tiga bagian, yaitu bagian informasi, angka prioritas dan bagian-bagian penyambung ke simpul lain. Simpul X mendahului (terletak di sebelah kiri) simpul Y, jika prioritas X lebih tinggi dibanding prioritas Y atau jika prioritas X dan Y sama, maka simpul X datang lebih dahulu dibanding dengan Y.

40 Biasanya dibuat suatu perjanjian bahwa angka prioritas yang lebih kecil menunjukkan derajad prioritas yang lebih tinggi. Sebagai contoh, jika angka prioritas pada simpul X adalah 1 dan pada simpul Y adalah 2, maka dikatakan bahwa simpul X berprioritas lebih tinggi dibanding dengan simpul Y.


Download ppt "ANTRIAN Farid Wajdi Yusuf Pendidikan Teknik Informatika dan Komputer"

Presentasi serupa


Iklan oleh Google