Diktat_Prosedural_07_ADTQueue

Alternatif i tabel dengan hanya representasi tail

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: h Next dari elemen Queue. Alternatif I : Tabel dengan hanya representasi TAIL sebagai indeks elemen terakhir, HEAD selalu diset sama dengan 1 jika Queue tidak kosong. Jika Queue kosong, maka HEAD=0 dan TAIL=0. Ilustrasi Queue tidak kosong, dengan 5 elemen : HEAD TAIL x x x x x 1 2 3 4 5 IdxMax 6 7 8 9 10 Ilustrasi Queue kosong: HEAD TAIL 0 1 IdxMax 2 3 4 5 6 7 8 9 10 Algoritma paling sederhana untuk penambahan elemen jika masih ada tempat adalah dengan “memajukan” TAIL. Kasus khusus untuk Queue kosong karena HEAD harus diset nilainya menjadi 1. Algoritma paling sederhana dan “naif” untuk penghapusan elemen jika Queue tidak kosong: ambil nilai elemen HEAD, geser semua elemen mulai dari HEAD+1 s/d TAIL Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 24 Okt 2011 2 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB (jika ada), kemudian TAIL “mundur” (yaitu menuju indeks yang lebih kecil/predesesor dari indeks sebelumnya). Kasus khusus untuk Queue dengan keadaan awal berelemen 1, yaitu menyesuaikan HEAD dan TAIL dengan definisi. Algoritma ini mencerminkan pergeseran orang yang sedang mengantri di dunia nyata, tapi tidak efisien. Alternatif II : Tabel dengan representasi HEAD dan TAIL, HEAD “bergerak” ketika sebuah elemen dihapus jika Queue tidak kosong. Jika Queue kosong, maka HEAD=0 dan TAIL=0. Ilustrasi Queue tidak kosong, dengan 5 elemen, kemungkinan pertama HEAD “sedang” berada di posisi awal: HEAD TAIL x x x x x 1 2 3 4 5 IdxMax 6 7 8 9 10 Ilustrasi Queue tidak kosong, dengan 5 elemen, kemungkinan pertama HEAD tidak berada di posisi awal. Hal ini terjadi akibat algoritma penghapusan yang dilakukan (lihat keterangan). HEAD TAIL IdxMax x 1 2 x x x x 3 4 5 6 7 8 9 10 Ilustrasi Queue kosong: IdxMax HEAD TAIL 0 1 2 3 4 5 6 7 8 9 10 Algoritma untuk penambahan elemen sama dengan alternatif I: jika masih ada tempat adalah dengan “memajukan” TAIL. Kasus khusus untuk Queue kosong karena HEAD dan TAIL harus diset nilainya menjadi 1. Algoritmanya sama dengan alternatif I Algoritma untuk penghapusan elemen jika Queue tidak kosong: ambil nilai elemen HEAD, kemudian HEAD “maju”. Kasus khusus untuk Queue dengan keadaan awal berelemen 1, yaitu menyesuaikan HEAD dan TAIL dengan definisi. Algoritma ini...
View Full Document

Ask a homework question - tutors are online