Matakuliah Tahun : T0034 / Perancangan & Analisis Algoritma : 2008 Pertemuan 5 STACK & QUEUE MENGENAL ADT • Abstract Data Type (ADT) – Adalah konsep abstrak yang diciptakan manusia untuk mempermudah perhitungan sebuah proses melalui abstraction • ADT tidak secara langsung dikenali oleh processor komputer, tapi bahasa pemrograman tingkat tinggi bisa dipakai untuk implementasi ADT • Contoh ADT – – – – Stack Queue Tree Graph [buku utama, bab 4.1] Bina Nusantara STACK • Stack adalah ADT yang menggambarkan sebuah tumpukan data. • Stack mengikuti aturan LIFO (Last In First Out) • Implementasi dapat menggunakan array atau linked-list [buku utama, bab 4.2] Bina Nusantara OPERASI STACK • Sebuah stack dalam pemrograman komputer memiliki 3 operasi yang dapat dilakukan : – PUSH X (yaitu menambahkan data X ke dalam tumpukan) – POP (yaitu mengambil elemen paling atas dari tumpukan) – EMTPY (yaitu mengosongkan tumpukan) Bina Nusantara ILUSTRASI STACK [buku utama, ilustrasi 4.1 dan ilustrasi 4.2] Bina Nusantara QUEUE • Queue adalah ADT yang menggambarkan sebuah antrian data. • Queue mengikuti aturan FIFO (Last In First Out) • Implementasi dapat menggunakan array atau linked-list [buku utama, bab 4.3] Bina Nusantara OPERASI QUEUE • Sebuah queue dalam pemrograman komputer memiliki 3 operasi yang dapat dilakukan : – PUSH X (yaitu menambahkan data X ke dalam tumpukan) – POP (yaitu mengambil elemen paling depan dari tumpukan) – EMTPY (yaitu mengosongkan tumpukan) Bina Nusantara ILUSTRASI QUEUE [buku utama, ilustrasi 4.3 dan ilustrasi 4.4] Bina Nusantara PERBEDAAN IMPLEMENTASI QUEUE • Dalm implementasi array, saat terjadi POP, seluruh isi queue akan mengalami pergeseran posisi menuju “ke depan” [buku utama, ilustrasi 4.5] Bina Nusantara IMPLEMENTASI STACK DAN QUEUE • Pelajari pseudocode 4.1 tentang implementasi Stack • Pelajari pseudocode 4.2 tentang implementasi Queue Bina Nusantara PERBANDINGAN • • • • • Kapan stack digunakan? Kapan queue digunakan? Apa keunggulan dan kelemahan stack? Apa keunggulan dan kelemahan queue? Bisakah keduanya digabung? Bina Nusantara CIRCULAR ADT Tail Head ln l 1 l2 l3 Bina Nusantara LATIHAN • Diskusikan contoh kasus yang memerlukan struktur data Stack dan Queue! • Buatlah pseudocode untuk kasus tersebut! Bina Nusantara REVIEW • Apa yang sudah dipahami? • Apa yang akan dibahas selanjutnya? Bina Nusantara
© Copyright 2024 Paperzz