Program Studi Teknik Informatika

Slides:



Advertisements
Presentasi serupa
Antrian (Queue) Desain dan Analisis Algoritma
Advertisements

Queue (Antrian).
Dr. Anto Satriyo Nugroho, M.Eng
Pertemuan 5 Struktur Data
QUEUE II. IMPLEMENTASI QUEUE
List, Stack & Queue (1) Dr. Anto Satriyo Nugroho, M.Eng
Kuliah Ke-4 Antrian / Queue (Bab 4)
STRUKTUR DATA PERTEMUAN 6
QUEUE.
Queue.
Pertemuan (6) QUEUE (ANTREAN) IMAM SIBRO MALISI NIM :
STACK (Tumpukan).
Queue.
Queue.
QUEUE (ANTRIAN).
Queue.
Circular Queue.
Matakuliah : T0534/Struktur Data Tahun : 2005 Versi : September 2005
ANTRIAN Farid Wajdi Yusuf Pendidikan Teknik Informatika dan Komputer
STRUKTUR DATA Queue atau Antrian.
Queue By Serdiwansyah N. A. 1. Queue Penambahan data dilakukan pada sebuah ujung sebuah list, sedangkan penghapusan data dilakukan pada ujung yang lain.
Tim struktur data IF UNIKOM
STRUKTUR DATA STACK.
STRUKTUR DATA STACK.
STRUKTUR DATA QUIZ.
Program Studi Teknik Informatika
Struktur data Oleh: Tim Struktur Data IF ARRAY STATIS.
Tim struktur data IF UNIKOM
Queue (Antrian).
Struktur Organisasi Data 2
Queue.
STRUKTUR DATA QUEUE (Antrian)
Program Studi Teknik Informatika
Program Studi Teknik Informatika
STRUKTUR DATA Chapt 5 : QUEUE Oleh : Yuli Praptomo PHS, S.Kom.
Linked List Oleh: Tim Struktur Data IF - UNIKOM.
Double Linked List.
Tim struktur data IF UNIKOM
Program Studi Teknik Informatika
NAMA : SITI HAJAR NIM : UNIT : B NO.HP : 0852 – 2000 – 3786.
Linked List.
STRUKTUR DATA Array Statis.
LINKED LIST Oleh: Tim Algoritma & Pemrograman IF Double Linked List.
STRUKTUR DATA STACK.
Linked List Oleh: Tim Struktur Data IF - UNIKOM.
Program Studi Teknik Informatika
STRUKTUR DATA STACK.
Tim struktur data IF UNIKOM
Double Linked List.
STACK (Tumpukan).
STRUKTUR DATA Array Statis.
STRUKTUR DATA STACK.
Linked List Oleh: Tim Struktur Data IF - UNIKOM.
Queue(Antrian).
Linked List Oleh: Tim Struktur Data IF - UNIKOM.
Tim struktur data IF UNIKOM
QUEUE (Antrian) #Kulia 6 Algoritma dan Struktur Data.
Tim struktur data IF UNIKOM
QUEUE (ANTRIAN) Queue atau antrian didefinisikan sebagai kumpulan dari obyek-obyek yang homogen dengan operasi penambahan elemen (Enqueue) dan pengambilan.
SINGLE Linked List (lanjutan)
Tim struktur data IF UNIKOM
STRUKTUR DATA STACK.
Linked List Oleh: Tim Struktur Data IF - UNIKOM.
SINGLE Linked List (lanjutan)
Tim struktur data IF UNIKOM
LINKED LIST Oleh: Tim Algoritma & Pemrograman IF Double Linked List.
Rahmady Liyantanto liyantanto.wordpress.com
Pertemuan – 7 Antrian / Queue (Bab 4).
STRUKTUR DATA Teknik Informatika S1
Queue Algoritma dan Struktur Data.
Transcript presentasi:

Program Studi Teknik Informatika Struktur Data Queue (Antrian) Program Studi Teknik Informatika

Definisi Queue Queue (antrian) adalah barisan elemen/data dimana proses memasukkan/menambah elemen/data dilakukan pada posisi belakang (rear) dan proses mengeluarkan/mengambil elemen/data dilakukan pada elemen/data di posisi depan (front) FIFO Tim Struktur Data Program Studi Teknik Informatika

Operasi Dasar Queue Queue Enqueue Dequeue Proses memasukkan/menambah satu data ke dalam Queue Proses mengeluarkan/mengambil satu data dari Queue Tim Struktur Data Program Studi Teknik Informatika

Pendeklarasian Queue (Array) Kamus: Const MaxQueue = ….. Type LarikQueue = array [1..MaxQueue] of tipedata Queue : LarikQueue {nama variabel queue} Front, Rear : Integer {Front penunjuk depan queue, Rear penunjuk belakang queue} Tim Struktur Data Program Studi Teknik Informatika

Contoh Pendeklarasian Queue (Array Statis-Algoritma) Kamus: Const MaxQueue = 4 Type LarikQueue = array [1..MaxQueue] of integer Queue : LarikQueue {nama variabel queue} Front, Rear : integer {penunjuk queue} Tim Struktur Data Program Studi Teknik Informatika

Contoh Pendeklarasian Queue (List-Algoritma) Kamus: Type PointerQueue = ↑SimpulQueue SimpulQueue = Record MedanData : tipedata, MedanSambungan : PointerQueue EndRecord Front, Rear : PointerQueue {penunjuk queue} Tim Struktur Data Program Studi Teknik Informatika

Contoh Pendeklarasian Queue (Linked List -Algoritma) Kamus: Type PointerQueue = ↑SimpulQueue SimpulQueue = Record Angka : integer , Next : PointerQueue EndRecord Front, Rear : PointerQueue {penunjuk queue} Tim Struktur Data Program Studi Teknik Informatika

Operasi-operasi Queue Inisialisasi Operasi Kosong Operasi Penuh / Operasi Satu Simpul Enqueue Dequeue Tim Struktur Data Program Studi Teknik Informatika

Inisialisasi Proses mempersiapkan Queue dengan cara memberi harga nol pada array statis atau memberi harga nil/NULL pada linked list untuk penunjuk queue (Front dan Rear). Tim Struktur Data Program Studi Teknik Informatika

Operasi Kosong Operasi kosong digunakan untuk memeriksa apakah keadaan Queue kosong atau tidak kosong. Operasi kosong didapat dengan memeriksa harga Rear dari Queue. Jika Rear bernilai 0 (nol), maka queue kosong. Catatan: Pada Queue yang menggunakan Array Statis, operasi kosong digunakan saat Enqueue dan Dequeue. Tapi pada Queue yang menggunakan Linked List, operasi kosong digunakan saat Enqueue. Tim Struktur Data Program Studi Teknik Informatika

Operasi Penuh Fungsi penuh berguna untuk memeriksa apakah keadaan queue telah penuh atau belum. Jika penunjuk Rear sama dengan nilai MaxQueue, maka Queue telah penuh. Catatan: Fungsi penuh hanya ada pada queue yg direpresentasikan menggunakan array statis dan dilakukan pada proses Enqueue Tim Struktur Data Program Studi Teknik Informatika

Operasi Satu Simpul Fungsi Satu Simpul berguna untuk memeriksa apakah keadaan Queue memiliki satu simpul (data) atau lebih dari satu simpul. Jika penunjuk Rear sama dengan penunjuk Front, maka Queue memiliki satu simpul(data). Catatan: Fungsi Satu Simpul hanya ada pada Queue yg direpresentasikan menggunakan Linked List dan dilakukan pada proses Dequeue. Tim Struktur Data Program Studi Teknik Informatika

Enqueue (Array Statis) Enqueue dilakukan dengan cara: Periksa keadaan Queue. Jika kondisi queue tidak penuh, maka periksa lagi keadaan Queue apakah kosong atau tidak. Jika keadaan kosong, maka harga Front dan Rear bernilai 1. Jika tidak kosong, maka harga Rear bertambah 1. Kemudian data yang baru dimasukkan ke dalam Queue pada posisi Rear. Catatan: Pada Linked List proses Enqueue sama dengan proses penyisipan di akhir/di belakang. Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Enqueue (Array Statis) 1 2 3 4 3 5 8 7 front rear Enqueue(Front,Rear,Queue,3) Enqueue(Front,Rear,Queue,5) Enqueue(Front,Rear,Queue,8) Enqueue(Front,Rear,Queue,7) Enqueue(Front,Rear,Queue,2) “Queue Penuh”

Illustrasi Enqueue (Linked List) Enqueue(Front,Rear,8) Front Rear baru 8 Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Enqueue (Linked List) Enqueue(Front,Rear,3) Front Rear 8 baru 3 Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Enqueue (Linked List) Enqueue(Front,Rear,5) Front Rear 8 3 baru 5 Tim Struktur Data Program Studi Teknik Informatika

Dequeue (Array Statis) Proses dequeue bisa dilakukan jika queue dalam keadaan tidak kosong, dengan cara: Periksa apakah elemen/data di queue hanya ada satu atau lebih, jika satu elemen/data maka keluarkan elemen/data pertama dari Queue, lalu harga front dan rear menjadi 0 (nol). Jika lebih dari satu setelah mengeluarkan elemen/data dari queue maka lakukan proses pergeseran data dimana data di posisi kedua akan menempati Queue pada posisi pertama, data di posisi ketiga akan menempati Queue pada posisi kedua, dan seterusnya, kemudian posisi Rear akan berkurang 1. Catatan : Pada Linked List proses dequeue sama dengan proses penghapusan di awal/di depan Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Dequeue (Array Statis) 1 2 3 4 8 3 5 7 3 5 8 7 7 8 5 7 8 7 Item front rear Dequeue(Front,Rear,Queue,Item) Dequeue(Front,Rear,Queue,Item) Dequeue(Front,Rear,Queue,Item) Dequeue(Front,Rear,Queue,Item) Dequeue(Front,Rear,Queue,Item) “Queue Kosong” Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Dequeue (Linked List) Dequeue(Front,Rear,Item) Phapus Front Rear 8 3 5 Item Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Dequeue (Linked List) Dequeue(Front,Rear,Item) Phapus Front Rear 3 5 Item Tim Struktur Data Program Studi Teknik Informatika

Illustrasi Dequeue (Linked List) Dequeue(Front,Rear,Item) Front Rear Front Rear Phapus 5 Item Dequeue(Front,Rear,Item) Tim Struktur Data Program Studi Teknik Informatika

Enqueue(Queue Circular) Proses Enqueue pada Queue Circular (Array Statis), dengan cara: Penambahan data dilakukan jika kondisi queue tidak penuh. Jika keadaan kosong, maka posisi Front dan Rear bernilai 1. Tetapi jika tidak kosong, maka nilai Rear bertambah 1, tapi jika Rear ada di posisi maksimum queue, maka Rear = 1 Kemudian data baru disimpan di queue pada posisi Rear. Tim Struktur Data Program Studi Teknik Informatika

Dequeue (Queue Circular) Operasi dequeue pada Queue Circular (Array Statis), dengan cara : Periksa apakah Queue kosong atau tidak Periksa kembali apakah Queue berisi satu elemen atau lebih Jika berisi satu elemen, maka harga Front dan rear menjadi 0 (nol) Jika berisi lebih dari satu elemen, maka periksa apakah Front berada di posisi maksimum queue atau tidak, jika ya maka harga Front = 1, jika tidak maka harga Front bertambah 1. Tim Struktur Data Program Studi Teknik Informatika

ILLUSTRASI QUEUE CIRCULAR 1 2 3 4 Enqueue(Front,Rear,Queue,8) 8 2 9 3 5 7 Enqueue(Front,Rear,Queue,3) Enqueue(Front,Rear,Queue,5) Dequeue(Front,Rear,Queue,item) Enqueue(Front,Rear,Queue,7) front rear Enqueue(Front,Rear,Queue,2) Dequeue(Front,Rear,Queue,item) 3 8 Enqueue(Front,Rear,Queue,9) Item Enqueue(Front,Rear,Queue,12) “Queue Penuh” Tim Struktur Data Program Studi Teknik Informatika

Terima Kasih