Pertemuan 4 : Definisi & Operasi Disusun oleh : PH. Prima Rosa, S.Si., M.Sc. Sri Hartati Wijono, S.Si. 2003/2004 Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 1 Struktur Data PROBLEM ALGORITHM DATA IMPLEMENTATION Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 2 Pert. 4b Struktur Data - FMIPA USD - 2003 1
Struktur Data Algoritma yang efektif dan efisien memerlukan pengetahuan yang komprehensif tentang struktur data. Pemilihan struktur data yang sesuai merupakan kunci untuk mengembangkan algoritma yang baik. Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 3 Hirarki Struktur Data Level 0 Bit Byte Word Data Type Level 1 Integer Float Char Boolean Pointer Level 2 Array Structure File Data Structure Level 3 Stack Queue List Tree Set Graph Abstract Data Type Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 4 Pert. 4b Struktur Data - FMIPA USD - 2003 2
Apa yang dimaksud.. TipeData? Sekumpulan obyek yang memiliki kriteria tertentu Struktur Data? Sekumpulan variabel dari tipe data yang sama atau berbeda. TipeData Abstrak? Struktur Data dan operasi-operasinya Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 5 Stack/ Dalam Kehidupan Sehari-hari nampan baju uang logam kotak Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 6 Pert. 4b Struktur Data - FMIPA USD - 2003 3
Contoh Lain kaleng buku Stack Memori Komputer Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 7 Apakah TDA Stack/? TDA adalah sebuah struktur data dengan ketentuan semua akses terbatas hanya pada item yang terakhir disisipkan. Item hanya ditambahkan dan dihapus dari posisi akhir tumpukan. TDA tumpukan menggunakan prinsip yang dikenal LIFO: Last-In, First-Out Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 8 Pert. 4b Struktur Data - FMIPA USD - 2003 4
Operasi Dasar Push Aksi : Menambahkan sebuah item pada posisi paling atas dari sebuah tumpukan. Persyaratan : tumpukan tidak penuh. Jika penuh : overflow Pop Aksi : Menghapus item yang terakhir ditambahkan ke tumpukan. Persyaratan : tumpukan tidak kosong. Jika kosong : underflow Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 9 Operasi Dasar Stack Aksi: Melihatdata yang ada di posisi paling atas Persyaratan : tidak kosong Inisialisasi / Buat Aksi : Membuat tumpukan baru Persyaratan : - Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 10 Pert. 4b Struktur Data - FMIPA USD - 2003 5
Operasi Dasar IsEmpty Aksi : Mengecek apakah tumpukan kosong. Mengembalikan True / 1 jika kosong. Persyaratan : - IsFull (Hanya diterapkan pada implementasi array) Aksi : Mengecek apakah tumpukan penuh. Mengembalikan True / 1 jika penuh. Persyaratan : - Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 11 Operasi PUSH Data Operasi Menambahkan sebuah item pada posisi paling atas dari sebuah tumpukan. Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 12 Pert. 4b Struktur Data - FMIPA USD - 2003 6
Operasi POP Data Operasi Menghapus item yang terakhir ditambahkan ke tumpukan. Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 13 Operasi Stack Data Operasi Melihat data yang ada di posisi paling atas tidak mengalami perubahan Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 14 Pert. 4b Struktur Data - FMIPA USD - 2003 7
Operasi Buat Kosong Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 15 Contoh Operasi Pada Langkah 1 biru Langkah 2 biru Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 16 Pert. 4b Struktur Data - FMIPA USD - 2003 8
Contoh Operasi Pada biru Langkah 3 biru Langkah 4 Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 17 Contoh Operasi Pada Langkah 5 Langkah 6 Langkah 7 Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 18 Pert. 4b Struktur Data - FMIPA USD - 2003 9
Implementasi Statis : Array (Statis) Tempat yang dialokasikan statis Dapat terjadi kehabisan tempat Dinamis : Linked list Tempat dialokasikan secara dinamis (dapat ditambah) Memerlukan alokasi memori yang lebih besar untuk setiap elemen. Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 19 Aplikasi Mengevaluasi ekspresi matematis Mempertukarkan elemen Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 20 Pert. 4b Struktur Data - FMIPA USD - 2003 10