Struktur Data Sri Nurhayati, MT Materi Kuliah : Pengantar Struktur Data Review Struct/Record dan Array List Stack Queue Tree Daftar Pustaka : Moh.Sjukani, Algoritma dan Struktur Data, Mitra Wacana Media Shcauhm, 1998, Data Structures, Prentise Hall Penilaian : Tgs : 15 %, Kuis = 20%, UTS = 30%, UAS = 35% Bagaimana cara mengatasi masalah implementasi program dengan komputer? Pemahaman masalah secara menyeluruh dan persiapan data Keputusan operasi-operasi yang dilakukan terhadap data Penyimpanan data-data pada memori sehingga tersimpan dan terstruktur secara logis, operasinya efisien Pengambilan keputusan terhadap bahasa pemrograman mana yang paling cocok untuk jenis data yang ada PROGRAM ? ALGORITMA STRUKTUR DATA Algoritma ….. deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis Ciri algoritma yang baik menurut Donald E.Knuth: 1. Input: ada minimal 0 input atau lebih 2. Ouput: ada minimal 1 output atau lebih 3. Definite: ada kejelasan apa yang dilakukan 4. Efective: langkah yang dikerjakan harus efektif 5. erminate: langkah harus dapat berhenti (stop) secara jelas Contoh Algoritma ….. •Mencari nilai maksimum •Mengurutkan data •Mencetak bilangan ganjil dari 1 – 19 •Menyimpan data mahasiswa baru •Mencetak data absensi •… Contoh Algoritma mencetak bilangan ganjil dari 1-19 1. Dimulai dari nilai 1 2. Seleksi apakah nilai tersebut ganjil (syarat : jika habis di bagi 2) 3. Jika ganjil maka lakukan pencetakan, jika tidak maka ke tahap berikutnya 4. Nilai di tambah satu 5. Seleksi apakah nilai sudah sampai dengan 20, jika belum ulangi langkah 2, jika sudah maka stop Struktur Data ….. model logika/matematik yang secara khusus mengorganisasi data Contoh Struktur Data ….. • Struktur Data Statis – array/larik , rekord, himpunan. • Struktur Data Dinamis list/senarai, queue /antrian /giliran, tumpukan /stack /timbunan, pohon, graf. Contoh Struktur Data ….. Array A satu dimensi : 8 indeks (1 s/d 8) dan data 1, 7, 18 dst. 1 7 18 03 69 24 08 70 1 2 3 4 5 6 7 8 Array B dua dimensi (matriks) : - jumlah baris 2, kolom 3 - data 18, 03, 69, 24, 08, 70. 1 2 3 1 18 03 69 2 24 08 70 List Berkait / Senarai Tumpukan dengan tiga data ( 18, 03, dan 69 yang merupakan posisi terakhir / TOP ) 69 03 18 << TOP Pohon dengan akar A A B C D E F Graf dengan simpul X, Y, T dan S 7 3 2 Y 6 X 1 T S 4 5 Operasi Pada Struktur Data • • • • Traversal (Traversing) : mengunjungi setiap elemen SD Pencarian (Searching) : menemukan elemen/lokasi pada SD Penyisipan (Inserting) : menambah elemen baru pada SD Penghapusan (Deleting) : menghapus elemen dari SD Contoh Operasi terhadap data Array A satu dimensi : 8 indeks (1 s/d 8) dan data 1, 7, 18 dst. 1 7 18 03 69 24 08 70 1 2 3 4 5 6 7 8 1. Insert data pada array ke-1 2. Cari data 18 ada dimana ? 3. Telusuri semua data 4. Hapus data ke-6 Mengapa perlu SD Mengenal bentuk organisasi penyimpanan data dan pengoperasiannya. Menentukan kualitas informasi : akurat, tepat pada waktunya dan relevan. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Mengurangi duplikasi data (data redudancy) Hubungan data dapat ditingkatkan (data relatability) Mengurangi pemborosan tempat simpanan luar