GARISGARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) Mata Kuliah Bobot Mata Kuliah : : Algoritma Dan Struktur Data II 3 Sks Deskripsi Mata Kuliah : Struktur Stack (satu dan dua sisi), Queue (Linear Queu, Circular Queue, Double Ended Queue); Record Structure; Linear Singly Linked List; Linear Doubly Linked List; Tree; Representasi Arithmetics Statement ke dalam Pohon Biner; Penulusuran Pohon Biner; Konversi, Infix, Prefix, dan Postfix; Graph; Searching; Sorting. Pertemuan Pokok Bahasan / / Minggu Tujuan Sub Pokok Bahasan dan Sasaran Belajar / Tujuan Tehnik Media Instruksional Instruksional Khusus (TIK) Pembelajaran Pembelajaran Kuliah mimbar Papan Tulis, OHT Evaluasi Referensi Umum (TIU) 1 Materi Bahasan, Sistem Penilaian dan Array TIU: Menjelaskan hal hal yang terkait dengan perkuliahan dan Konsep Array 1. 2. 3. 4. 5. 6. Pendahuluan Definisi struktur data, Konsep struktur data Konsep array dalam bahasa C Array berdimensi satu Array multidimensi Contoh program TIK : 1. Mahasiswa dapat menjelaskan array dan dapat menerapkannya dalam program bahasa C 2. Mahasiswa dapat memahami konsep Struktur Data dan Aplikasinya dalam disiplin ilmu lain 1 2 2 Pointer: Inisialisasi dan Manipulasi Memori TIU: Menjelaskan Definisi dan Penggunaan Pointer 3 Struct: Deklarasi dan Penggunaannya TIU: Menjelaskan Struct dalam bahasa C 4 Dynamic Linked List TIU: Menjelaskan Struktur Data LinkedList dan mengajarkan bagaimana membentuknya serta beberapa penjelasan secara 1. Pengertian memori dan alokasinya 2. Pengenalan fungsi – fungsi library malloc, alloc dan calloc 3. Penggunaan fungsi – fungsi library malloc, alloc dan calloc 4. Contoh – contoh dengan malloc, alloc dan calloc TIK : 1. Mahasiswa dapat menjelaskan proses memori sebagai mekanisme bagaimana suatu program dirancang yang mengutamakan efisiensi dan kecepatan eksekusi 2. Mahasiswa dapat trampil dan menguasai perancangan program yang baik. 1. Prototipe Struct 2. Deklarasi dan Definisi Struct 3. Prototipe Typedef 4. Deklarasi dan Definisi Typedef 5. Contoh – contoh Struct dan Typedef 6. Penggunaan Typedef dengan Struct 7. Penggunaan Typedef dengan operator pointer 8. Contoh - contoh typedef dengan operator pointer TIK : Mahasiswa dapat memahami, menguasai dan terampil dalam penggunaan Struct, Typedef dan operator pointer 1. Pengertian Linked List 2. Pembentukan Struktur Data Struct dengan typedef 3. Pengertian Single Linked List 4. Simpul, Pencarian, Penghapusan dan Implementasi Linked List TIK : 1. Mahasiswa dapat memahami dan terampil dalam mengimplementasikan Linked List. 2. Mahasiswa dapat melakukan berbagai operasi 2 Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT 3 Tugas 1 2 1,2 detail. 5 Stack TIU: Menjelaskan Struktur Data Stack dan Implementasinya 1. 2. 3. 4. 5. 6. 7. Linked List sesuai dengan definisi yang dipelajari. Pengertian Stack Manfaat/kegunaan Stack Implementasi Stack untuk integer Aplikasi Stack Algoritma mengubah ekspresi infix menjadi postfix Algoritma menghitung nilai ekspresi postfix Implementasi Stack untuk evalusi, infix, postfix Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT 1,2 TIK : Mahasiswa dapat memahami dan mampu menerapkan setiap konsep struct , typedef untuk membentuk struktur data Stack dan mengimplementasi kedalam bentuk pengkodean bahasa pemrograman C. 6 Queue TIU: Menjelaskan Struktur Data Queue dan Implementasinya 1. Pengertian Queue 2. Kegunaan Queue 3. Implementasi Queu TIK : 1. Mahasiswa dapat memahami Queue yang merupakan dasar dari implementasi Linked List dengan beberapa aturan – aturan yang membedakannya. 2. Mahasiswa dapat melakukan implementasi Queue kedalam bentuk pengkodean bahasa pemrograman C 3 Tugas 2 1,2 7 8 Binary Search Tree (BST) TIU: Menjelaskan Struktur Data Binary Search Tree dan Implementasinya Penelusuran Tree (Tree Traversal) TIU: Menjelaskan Penelusuran Tree dan Implementasinya 9 10 (Simple Sorting Methods): Bubble Sort TIU: Menjelaskan Teknik Pengurutan sederhana Buble Sort 1. 2. 3. 4. Pengertian Binary Tree Pengertian Binary Search Tree Pembentukan Binary Search Tree Implementasi Binary Search Tree TIK : Mahasiswa dapat memahami Binary Tree dan Pembentukan Binary Tree serta implementasinya kedalam bentuk bahasa pemrograman C 1. Pengertian BST Traversal 2. Pengertian Inorder, Preorder dan Postorder 3. Implementasi Inorder, Preorder dan Postorder Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT 1,2 Tugas 3 1,2 TIK : Mahasiswa dapat memahami pergertian BST Traversal dan melakukan implementasinya kedalam bentuk pengkodean bahasa pemrograman C. UJIAN TENGAH SEMESTER 1. Teknik pengurutan secara umum dan pembagiannya 2. Pengertian teknik pengurutan dengan Bubble Sort 3. Kelebihan dan kekurangan Teknik pengurutan dengan Bubble Sort 4. Implementasi Teknik Pengurutan dengan Bubble Sort TIK : Mahasiswa dapat memahami teknik pengurutan secara umum dan beberapa pembagiannya serta dapat melakukan implementasi kedalam pengkodean bahasa pemrograman C. 4 Kuliah mimbar Papan Tulis, OHT 1,2 11 Insertion and Selection Sort TIU: Menjelaskan Teknik pengurutan dengan Selection Sort 1. Pengertian Teknik Pengurutan dengan Selection Sort 2. Langkah/Algoritma Pengurutan dengan Selection Sort 3. Kelebihan dan Kekurangan Teknik Pengurutan dengan Selection Sort 4. Implementasi pengurutan dengan Selection Sort Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT 1,2 TIK : Mahasiswa dapat memahami dan mengimplemetasikan Teknik pengurutan Selection Sort kedalam pengkodean Bahasa Pemrograman C 12 Quick Sort and Merge Sort TIU: Menjelaskan Teknik pengurutan dengan Quick Sort dan Merge Sort 1. Pengertian Teknik Pengurutan dengan Quick Sort dan Merge Sort. 2. Langkah/Algoritma Pengurutan dengan dengan Quick Sort dan Merge Sort 3. Kelebihan dan Kekurangan Teknik Pengurutan dengan dengan Quick Sort dan Merge Sort 4. Implementasi pengurutan dengan dengan Quick Sort dan Merge Sort Tugas 4 1,2 TIK : Mahasiswa dapat memahami dan mengimplemetasikan Teknik pengurutan Quick Sort dan Merge Sort ke dalam pengkodean Bahasa Pemrograman C 13 Teknik Pencarian (Searching): Binary Search TIU: Menjelaskan Teknik pencarian dengan Binary Search 1. Pengertian Binary Search 2. Langkah/Algoritma dengan Binary Search 3. Implementasi Binary Search TIK : Mahasiswa dapat memahami dan mengimplemetasikan Binary Search ke dalam pengkodean Bahasa Pemrograman C 5 1,2 14 15 16 Struktur Heap dan Heapify TIU: Menjelaskan Struktur Data Heap dan Heapify 1. 2. 3. 4. Membangun Heap Heapify untuk menjaga syarat heap Implementasi Heap dan Heapify Visualisasi metode Heap Menggunakan Applet Hash dan Hash Function TIU: Menjelaskan Struktur Data Hash dan Hash Function 1. Membangun Hash 2. Mendesain Hash Function 3. Implementasi Has dan contoh penggunaannya Kuliah mimbar Papan Tulis, OHT Kuliah mimbar Papan Tulis, OHT 1,2 TIK : Mahasiswa memahami cara membangun Heap dan Heapify serta aplikasinya Tugas 5 TIK : Mahasiswa memahami cara membangun Struktur Hash, membuat Hash Function dan cara penggunaannya. UJIAN AKHIR SEMESTER Daftar Referensi 1. R. Sedgewick, Algorithms in C, 3rd edition, Addison Wesley, USA, 1998. 2. A. Kelly & Ira P., A Book on C: Programming in C, 3rd edition, The Benjamin/Cummings Publishing Co., California, 1995. 3. http://www.netcom.com/~tjensen/ptr/cpoint.htm 4. Mitchell Wait & Robert Lafore, Data Structures & Algorithm in Java, Waite Group Press, 1998 6 1,2