IKG2A3 / Pemrograman Terstruktur 2 ZK Abdurahman Baizal KK Algoritma dan Komputasi 1 8/25/2015 Pengantar Struktur Data Deskripsi Singkat Matakuliah ini memberikan bekal tentang Konsep algoritma dan struktur data, kaitan antara keduanya, abstract data type. Pembahasan mulai dengan list linier secara umum, multi list, stack, queue, tree, dan graf. Dalam kuliah, algoritma disampaikan dalam bentuk notasi algoritmik, sedangkan dalam responsi, akan disampaikan dalam bahasa C 2 8/25/2015 IKG2A3 Pemrograman Terstruktur 2 Tujuan Mahasiswa dapat memahami tentang konsep algoritma dan struktur data Mahasiswa dapat membuat realisasi struktur data dalam algoritma maupun bahas pemrograman Mahasiswa dapat membuat aplikasi serta aplikasi dari struktur data 3 8/25/2015 Referensi Diktat Kuliah IF2181 Struktur Data, Inggriani Liem, ITB, 2003. Standish, Thomas A. Data structures, Algorithms, & Software Principles in C. Addison wesley publishing company. 1995 4 8/25/2015 Cakupan Materi Mesin Abstrak Konsep Abstract Data Type Pengantar List Linier Representasi Logik List linier Representasi Fisik List Linier Variasi List Linier Multi list 5 8/25/2015 Cakupan Materi (Lanjutan) Stack Queue Graph 6 8/25/2015 Komponen Penilaian Kuis 1 (10%) : Mesin Abstrak dan ADT, awal minggu ke-3 Kuis 2 (10%): List Linier, awal minggu ke- 5 UTS (25%): bahan mulai dari awal sampai dengan Multi List, berbentuk Essay. Dikoreksi masing-masing dosen Kuis 3 (10%): Stack dan Queue, awal minggu ke-11 Tugas Besar (20%): Implementasi materi kuliah (List, Stack, Queue, Binary Tree, Graph mereka memilih) untuk kasus yang sesuai. Presentasi pada minggu ke-14 dan ke-15. Presentasi setiap kelompok pada kisaran 20 menit. Gunakan bahasa C. UAS (25%): semua bahan setelah UTS sampai dengan Graph, berbentuk Essay. 7 8/25/2015 Tugas Besar Format Laporan Tertulis: – Latar Belakang – Pernyataan Masalah – Tujuan – Penyelesaian Masalah : Struktur Program, Pseudo Code yang utama, Screen Shoot – Kesimpulan dan Saran Cara penilaian: – Kebenaran coding 30 % – Kompleksitas sistem : semakin banyak struktur data yang digunakan semakin bagus (tetapi harus lengkap primitifnya) atau membentuk primitif baru dari primitif yang ada. 30% – Kemudahan membaca program (identasi, komen, struktur, dll) 20% – Kejelasan dan penguasaan ketika presentasi dan demo program, keaktifan (bertanya dalam presentasi, kualitas dan kuantitas) 10% – Kejelasan dan kerapihan laporan tertulis 10% 8 8/25/2015 Pengantar Struktur Data Algoritma adalah urutan langkah-langkah untuk memecahkan suatu masalah. Struktur Data → mekanisme memodelkan data (merepresentasikan data) Definisi (Stubs & Webre) – Data : Factual information (as measurement or statistics) used as a basis for reasoning, discussion, or calculation – Structure : Arrangement or relationship of elements (as particles, parts, or organs) in a substance, body, or system “ A data structure is a data type, it has a set of operations on its values” 9 8/25/2015 Contoh Struktur Data List linier Multi List 10 8/25/2015 Contoh Struktur Data Stack (Tumpukan) Queue (Antrian) 11 8/25/2015 Contoh Struktur Data Tree (Pohon) – Tidak linier Graf – Tidak linier 12 8/25/2015 Level abstraksi dari perepresentasian data (level struktur data) : Definisi Fungsional – pendefinisian struktur data dan operator-operator yang berlaku pada struktur tersebut. Representasi Lojik – spesifikasi type dari struktur, yang menyangkut nama type dan spesifikasi semua operator 13 8/25/2015 Level abstraksi dari perepresentasian data (level struktur data) : Representasi (implementasi) Fisik – spesifikasi dari struktur data sesuai dengan implementasinya dalam komputer. – Kontigu – penempatan sekumpulan data dalam memori benar-benar secara kontigu (setiap elemen posisi alamat ditempatkan secara berturutan) → struktur statis – Berkait – penempatan sekumpulan data dalam memori dapat terpencarpencar (namun informasi alamat untuk masing-masing elemen) → struktur dinamis 14 8/25/2015 Referensi Wirth, Niklaus. Algorithm + data structure = program. Prentice Hall. 1996 15 8/25/2015 THANK YOU 8/25/2015 16