GARIS - GARIS BESAR PROGRAM PENGAJARAN (GBPP) A. DESKRIPSI MATAKULIAH Nama Mata Kuliah : Struktur Data Kode Mata Kuliah : Jurusan / Fak : Teknik Informatika / Fak. Teknologi Industri Jenjang Studi : Sarjana SKS : 3 (Tiga) Waktu pertemuan : 150 Menit (Total : 150 menit x 12 pertemuan = 1800 MENIT) Deskripsi singkat : Perkuliahan diselenggarakan dalam 12 kali tatap muka selama satu semester. Perkuliahan diawali dengan menjelaskan pentingnya mempelajari konsep struktur data dalam pemrograman, materi, referensi, tata cara perkuliahan, tugas, serta penilaian akhir. Materi yang dibahas dalam kuliah ini meliputi konsep struktur data secara umum, tipe data dalam pemrograman terstruktur, statemen, kondisi, prosedur, fungsi, rekursi, teori sorting, stack, queue, list, linked list, tree dan searching. Ujian Tengah Semester dan Ujian Akhir Semester dilakukan secara terjadwal. Tugas kuliah akan diberikan baik secara individu maupun kelompok guna mengevaluasi tingkat pemahaman mahasiswa terhadap materi yang dibahas. B. ANALISIS INSTRUKSIONAL Tujuan Instruksional Umum : Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2 Mahasiswa dapat mengenal, mengetahui, memahami dan menerapkan mahamim konsep binary seaching Mahasiswa dapat mengenal, mengetahui, memahami dan menerapkan konsep Queue, Stack, Sorting Mahasiswa dapat mengenal, mengetahui, memahami dan menerapkan pointer dan konsep alokasi dinamis (List) Mahasiswa dapat mengenal, mengetahui, memahami dan menerapkan konsep fungsi (pass by value dan pass by reffrence) dan rekursi dengan baik Mahasiswa mampu mengenal, mengetahui, mengklasifikasi dan memakai berbagai tipe terstruktur dalam Pascal/C++ Mahasiswa mampu mengetahui, menjelaskan dan mengaktegorikan berbagai tipe data sederhana dalam Pascal/C++ Gambar 1. Skema materi instruksional mata kuliah struktur data C. MANFAAT Struktur Data merupakan mata kuliah yang mempelajari konsep pemanfaatan berbagai tipe dan penggunaan logika pemrograman dalam pembuatan suatu aplikasi. Mata kuliahn ini merupakan mata kuliah wajib bidang Sistem Informasi dalam lingkungan program studi Teknik Informatika. D. DESKRIPSI PERKULIAHAN Perkuliahan diselenggarakan dalam 12 kali tatap muka selama satu semester. Perkuliahan diawali dengan menjelaskan Tipe data sederhana & terstruktur, Tipe data terstruktur : array & record, Konsep fungsi & prosedur, Passing parameter dalam fungsi / prosedur, 3 Konsep REKURSI dalam fungsi /prosedur, Struktur data pointer dan alokasi dinamis, SORTING, STACK dan aplikasinya, QUEUE dan aplikasinya, TREE dan aplikasinya,, Searching E. TUJUAN INSTRUKSIONAL Setelah mengikuti mata kuliah Struktur Data mahasiswa diharapkan mampu: 1. Mahasiswa dapat mengetahui, menjelaskan dan memanfaatkan berbagai tipe data sederhana yang dapat dibuat dalam PASCAL. 2. Mahasiswa dapat mengetahui, mengkategori dan memanfaatkan berbagai tipe data terstruktur yang dapat dibuat dalam PASCAL. 3. Mahasiswa dapat mengenal, memahami, dan membuat contoh modulasi dalam bentuk program dengan memakai fungsi atau prosedur. 4. Mahasiswa dapat mengenal, mengetahui dan dan menerapkan konsep pelewatan parameter, macam -macam parameter : pass by value dan pass by reference, dalam fungsi atau prosedur pada suatu program Mahasiswa dapat mengenal, mengatahui, merancang dan menerapkan konsep rekursi dalam fungsi atau prosedur, memilih antara pendekatan iterasi atau rekursi, mengetahui kelebihan dan kelemahan rekursi. 5. 6. Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep POINTER dan konsep alokasi data secara dinamis. 7. Mahasiswa dapat mengenal, mengetahui, dan menerapkan berbagai tipe SORTING Mahasiswa dapat mengenal, mengetahui dan menerapkan konsep STACK dan penerapan dalam olah data . 8. 9. Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep QUEUE dan penerapan dalam olah data 10. Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep TREE dan penerapan dalam olah data 11. Mahasiswa dapat mengenal, mengetahui,dan menerapkan konsep TREE dan penerapan dalam olah data F. STRATEGI PERKULIAHAN Metode perkuliahan yang akan digunakan berupa kuliah tatap muka. Kuliah tatap muka mengantarkan pokok bahasan dan menjelaskan isi dari sub pokok bahasan secara berurutan. Pendalaman berupa latihan pengerjaan soal dan tugas mandiri akan dilakukan pada waktu tatap muka. Setiap sub 4 pokok bahasan akan diberikan soal-soal untuk dikerjakan secara mandiri atau berkelompok. Pustaka : 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 H. TUGAS-TUGAS 1. 2. 3. Setiap bahan bacaan yang dijadikan acuan pada setiap tatap muka harus sudah dibaca terlebih dahulu sebelum mengikuti perkuliahan, agar mahasiswa lebih mudah mengikuti acara perkuliahan. Mahasiswa juga diwajibkan mengerjakan tugas-tugas (latihan soal) yang akan diberikan setelah acara perkuliahan. Tugas dikumpulkan satu minggu setelah diberikan. Ujian / evaluasi baik berupa ujian tengah semester dan ujian akhir semester akan dilakukan sesuai dengan jadwal yang dikeluarkan oleh BAA IST AKPRIND. II. KRITERIA PENILAIAN 1. Penilaian akan dilakukan oleh pengajar dengan menggunakan kurva sebaran normal sehingga penentuan nilai A, B, C, D dan E akan dilakukan setelah pengolahan nilai ujian tersebut. 2. Dalam penentuan nilai akhir akan digunakan pembobotan sebagai berikut: Ujian Tengan Semester (UTS) : 20% Ujian Akhir Semester (UAS) : 20% Tugas/Laporan : 50 % (tugas kelompok masingmasing 15%, sebanyak 2x, individu total 20%) Presensi : 10% (KEHADIRAN MINIMUM 60%) PENILAIAN: JIKA nilai angka >= 80 A Jika 60 <= nilai angka < 80 B Jika 40 <= nilai angka < 60 C Jika 20<= nilai angka < 40 D Jika nilai angka < 20 E 5 6 Minggu ke Tujuan Instruksional Khusus Pokok bahasan Sub Pokok Bahasan Acuan waktu 1. Tipe data sederhana : integer, real, char, string, boolean 2. Penyimpanan data dalam variabel 3. Operator dan proses LOOP : FOR..DO, WHILE..DO dan REPEAT..UNTIL 4. Kondisional : IF..THEN dan CASE OF 1. Tipe data array : satu dan dua dimensi 2. Aplikasi dalam operasi matrik 3. Tipe data record 4. Mengakses record dgn DOT & statemen WITH 1,2,3,4,5, 6,7 150 menit 1,2,3,4,5, 6,7 150 menit 1. Konsep fungsi : library dan user defined function 2. Pembuatan fungsi sendiri & pemanggilan fungsi 3. Konsep prosedur : library dan terdefinisi user 4. Pemanggilan prosedur, perbedaan dgn fungsi 1. Fungsi / prosedur tanpa dan dengan parameter 2. Pelewatan parameter dgn nilai (pass by value) 3. Pelewatan parameter dgn alamat (pass by reference) 4. Pemilihan fungsi atau prosedur untuk modul 1,2,3,4,5, 6,7 150 menit 1,2,3,4,5, 6,7 150 menit 1 Mahasiswa dapat mengetahui, menjelaskan dan memanfaatkan berbagai tipe data sederhana yang dapat dibuat dalam PASCAL. Tipe data sederhana & terstruktur 2 Mahasiswa dapat mengetahui, mengkategori dan memanfaatkan berbagai tipe data terstruktur yang dapat dibuat dalam PASCAL. Tipe data terstruktur : array & record 3 Mahasiswa dapat mengenal, memahami, dan membuat contoh modulasi dalam bentuk program dengan memakai fungsi atau prosedur. Konsep fungsi & prosedur 3 Mahasiswa dapat mengenal, mengetahui dan dan menerapkan konsep pelewatan parameter, macam -macam parameter : pass by value dan pass by reference, dalam fungsi atau prosedur pada suatu program Mahasiswa dapat mengenal, mengatahui, merancang dan menerapkan konsep rekursi dalam fungsi atau prosedur, memilih antara pendekatan iterasi atau rekursi, mengetahui kelebihan dan kelemahan rekursi. Passing parameter dalam fungsi / prosedur Konsep REKURSI dalam fungsi /prosedur 1. Pengertian persoalan rekursi 2. Implementasi rekursi dalam Fungsi /prosedur 3. Kelebihan rekursi : contoh kasus fungsi faktorial 4. Kelemahan rekursi : contoh kasus dalam deret FIBBONACCI 1,2,3,4,5, 6,7 150 menit Mahasiswa dapat mengenal, mengetahui,dan membuat program konsep SORTING dan aplikasinya Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep STACK dan penerapan SORT 1. Straight selection SORT 2. Straight change SORT 3. Buble Sort 4. Insertion SORT 1. Konsep STACK 2. Mengekses stack : pola LIFO 3. Prosedur PUSH dan POP 1,2,3,4,5, 6,7 150 menit 1,2,3,4,5, 6,7 150 menit 4 5 6 STACK dan aplikasinya 7 dalam olah data . 7 8 9 Presentasi 1 Mid 2 minggu Mahasiswa dapat mengenal, mengetahui,dan menerapkan konsep QUEUE dan penerapan dalam olah data . dalam STACK 4. Perbandingan STACK dengan ARRAY dan dengan pointer 5. Aplikasi : membalik kalimat QUEUE dan aplikasinya Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep POINTER dan konsep alokasi data secara dinamis Struktur data pointer dan alokasi dinamis 10,11 Mahasiswa dapat memahami dan membuat penerapan program dalam linked list Linked list 12 Mahasiswa mengenal, mengetahui,dan membuat program dan menerapkan konsep TREE dan penerapan dalam olah data . TREE dan aplikasinya 13 Presentasi ke 2 1. Konsep QUEUE atau antrian 2. Mengekses QUEUE : pola – FIFO 3. Prosedur ENQUE dan DEQUE dalam Queue 4. Perbandingan QUEUE dgn ARRAY & pointer 5. Aplikasi : simulasi tempat parkir 1. Pengertian alokasi data dinamis, perbandingan dengan array 2. Notasi ^ dan notasi . untuk deklarasi pointer dan aksesnya 3. Prosedur NEW untuk alokasi memory 4. Prosedur DISPOSE untuk pembebasan memory 5. Membuat prosedur untuk menyusun & mengakses data 1. pengertian list 2. konsepnlinked list 3. operasi linked list; menambah,menghapus ,mencetak,mencari 4. aplikasi linked list pada stack dan queue 1. Pengertian TREE 2. Macam-macam tree : BINARY TREE 3. Kunjungan terhadap TREE : PREE ORDER, INORDER dan POST ORDER 4. Mendefinisikan struktur TREE dengan pointer 5. Aplikasi : notasi matematik : PREFIX, INFIX dan POSTFIX 1. 1,2,3,4,5, 6,7 150 menit 1,2,3,4,5, 6,7 150 menit 150 menit 1,2,3,4,5, 6,7 150 menit TOTAL WAKTU 1800 MENIT 8 SATUAN ACARA PERKULIAHAN 1 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :1 TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengetahui, menjelaskan dan memanfaatkan berbagai tipe data sederhana yang dapat dibuat dalam PASCAL B. POKOK BAHASAN : Tipe data sederhana & terstruktur C. SUB POKOK BAHASAN 1. 2. 3. 4. Tipe data sederhana : integer, real, char, string, boolean Penyimpanan data dalam variabel Operator dan proses LOOP : FOR..DO, WHILE..DO dan REPEAT..UNTIL Kondisional : IF..THEN dan CASE OF D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Menjelaskan kontrak perkuliahan, materi, silabus Memperhatikan Penyajian 1. Menjelaskan tipe data sederhana: integer, real, string, Boolean dan terstruktur 2. Menjelaskan dan memberi contoh penerapan penyimpanan variabel 3. Langkah-langkah dalam menyusun program di C++ 4. Menjelaskan dan memberi contoh penerapan pemakaian operator dan perulangan LOOP 5. Menjelaskan dan memberi contoh pemakaian kondisi Review pascal secara singkat Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi E. EVALUASI - Kuis mengecek logika pemrograman 9 F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 10 SATUAN ACARA PERKULIAHAN 2 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :2 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengetahui, mengkategori dan memanfaatkan berbagai tipe data terstruktur yang dapat dibuat dalam PASCAL B. POKOK BAHASAN : Tipe data terstruktur : array & record C. SUB POKOK BAHASAN 1. Tipe data array : satu dan dua dimensi 2. Aplikasi dalam operasi matrik 3. Tipe data record 4. Mengakses record dgn DOT & statemen D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan dan memberi contoh penerapan penggunaan array satu, duadan tiga dimensi 2. Menjelaskan dan memberi contoh penerapan aplikasi operasi berbasis array (matrix) 3. Menjelaskan dan memberi contoh penerapan tipe data record dan file 4. Menjelaskan dan memberi contoh pemakaian record dan DOT document Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 11 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 12 SATUAN ACARA PERKULIAHAN 3 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :3 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, memahami, dan membuat contoh modulasi dalam bentuk program dengan memakai fungsi atau prosedur B. POKOK BAHASAN : Konsep fungsi & prosedur C. SUB POKOK BAHASAN 1. Konsep fungsi : library dan user defined function 2. Pembuatan fungsi sendiri & pemanggilan fungsi 3. Konsep prosedur : library dan terdefinisi user 4. Pemanggilan prosedur, perbedaan dgn fungsi D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian fungsi, library dan user defined function 2. Menjelaskan dan memberi contoh pembuatan fungsi baik pass by reference dan pass by value 3. Menjelaskan dan memberi contoh penerapan procedure dan pemakaian library 4. Menjelaskan dan memberi contoh pemakain fungsi dan prosedure Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 13 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 14 SATUAN ACARA PERKULIAHAN 4 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :4 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengatahui, merancang dan menerapkan konsep rekursi dalam fungsi atau prosedur, memilih antara pendekatan iterasi atau rekursi, mengetahui kelebihan dan kelemahan rekursi. B. POKOK BAHASAN : Konsep REKURSI dalam fungsi /prosedur C. SUB POKOK BAHASAN 1. Pengertian persoalan rekursi 2. Implementasi rekursi dalam Fungsi /prosedur 3. Kelebihan rekursi : contoh kasus fungsi faktorial 4. Kelemahan rekursi : contoh kasus dalam deret FIBBONACCI D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian Penutup 1. Menjelaskan konsep persoalan fungsi khusus rekursi 2. Menjelaskan dan memberi contoh implementasi rekursi dalam fungsi/prosedure 3. Menjelaskan dan memberi contoh penerapan kasus rekursi, yaitu pada perhitungan factorial dan deret fibbonacci Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 15 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 16 SATUAN ACARA PERKULIAHAN 5 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :5 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengatahui, merancang dan menerapkan konsep rekursi dalam fungsi atau prosedur, memilih antara pendekatan iterasi atau rekursi, mengetahui kelebihan dan kelemahan rekursi. B. POKOK BAHASAN : Konsep REKURSI dalam fungsi /prosedur C. SUB POKOK BAHASAN 5. Pengertian persoalan rekursi 6. Implementasi rekursi dalam Fungsi /prosedur 7. Kelebihan rekursi : contoh kasus fungsi faktorial 8. Kelemahan rekursi : contoh kasus dalam deret FIBBONACCI D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian Penutup 4. Menjelaskan konsep persoalan fungsi khusus rekursi 5. Menjelaskan dan memberi contoh implementasi rekursi dalam fungsi/prosedure 6. Menjelaskan dan memberi contoh penerapan kasus rekursi, yaitu pada perhitungan factorial dan deret fibbonacci Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 17 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 18 SATUAN ACARA PERKULIAHAN 6 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :6 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep POINTER dan konsep alokasi data secara dinamis B. POKOK BAHASAN : Struktur data pointer dan alokasi dinamis C. SUB POKOK BAHASAN 1. Pengertian alokasi data dinamis, perbandingan dengan array 2. Notasi ^ dan notasi . untuk deklarasi pointer dan aksesnya 3. Prosedur NEW untuk alokasi memory 4. Prosedur DISPOSE untuk pembebasan memory 5. Membuat prosedur untuk menyusun & mengakses data D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian alokasi data dinamis, perbandingan dengan array 2. Menjelaskan dan memberi contoh penggunaan notasi ^, deklarasi pointer dan aksesnya 3. Menjelaskan dan memberi contoh penerapan perintah new dan dispose 4. Menjelaskan dan memberi contoh pembuatan prosedur untuk menyusun dan mengakses data dengan menggunakan pointer Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 19 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 20 SATUAN ACARA PERKULIAHAN 7 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :7 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui, dan menerapkan konsep STACK dan penerapan dalam olah data . B. POKOK BAHASAN : STACK dan aplikasinya C. SUB POKOK BAHASAN 1. Konsep STACK 2. Mengekses stack : pola - LIFO 3. Prosedur PUSH dan POP dalam STACK 4. Perbandingan STACK dengan ARRAY dan dengan pointer 5. Aplikasi : membalik kalimat D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian STACK 2. Menjelaskan dan memberi contoh pembuatan stack dan pola lifo 3. Menjelaskan dan memberi contoh penerapan perintah push dan pop 4. Menjelaskan dan memberi contoh perbandingan stack dengan array dengan menggunakan pointer 5. Memberikan contoh penggunaan stack Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 21 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 22 SATUAN ACARA PERKULIAHAN 8 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :8 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui,dan menerapkan konsep QUEUE dan penerapan dalam olah data . B. POKOK BAHASAN : QUEUE dan aplikasinya C. SUB POKOK BAHASAN 1. Konsep QUEUE atau antrian 2. Mengekses QUEUE : pola – FIFO 3. Prosedur ENQUE dan DEQUE dalam Queue 4. Perbandingan QUEUE dgn ARRAY & pointer Aplikasi : simulasi tempat parkir D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian QUEUE 2. Menjelaskan dan memberi contoh pembuatan queue dan pola fifo 3. Menjelaskan dan memberi contoh penerapan perintah enqueue dan dequeue 4. Menjelaskan dan memberi contoh perbandingan queue dengan array dengan menggunakan pointer 5. Memberikan contoh penggunaan queue Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 23 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 24 SATUAN ACARA PERKULIAHAN 9 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit :9 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui,dan membuat program konsep SORTING dan aplikasinya B. POKOK BAHASAN : SORT C. SUB POKOK BAHASAN 1. Straight selection SORT 2. Straight exchange SORT 3. Buble Sort 4. Insertion SORT D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian sorting dan mengenalkan jenis-jenis sort 2. Menjelaskan dan memberi contoh pembuatan straight selection sort 3. Menjelaskan dan memberi contoh penerapan straight exchange sort 4. Menjelaskan dan memberi contoh penerapan bubble sort 5. Menjelaskan dan Memberikan contoh penggunaan insertion sort Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Penutup Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi 25 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 26 SATUAN ACARA PERKULIAHAN 10 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit : 10 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui,dan membuat program konsep SORTING dan aplikasinya B. POKOK BAHASAN : SORT C. SUB POKOK BAHASAN 1. RADIX SORT 2. QUICK SORT D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Memperhatikan dan bertanya 2. 3. Penutup Menjelaskan pengertian sorting dengan pointer Menjelaskan dan memberi contoh pembuatan radix sort Menjelaskan dan memberi contoh penerapan quick sort Memberi kesempatan bertanya dan memberi tugas/PR Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 27 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 28 SATUAN ACARA PERKULIAHAN 11 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit : 11 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa mengenal, mengetahui,dan membuat program dan menerapkan konsep TREE dan penerapan dalam olah data . B. POKOK BAHASAN : Tree dan aplikasinya C. SUB POKOK BAHASAN 1. Pengertian TREE 2. Macam-macam tree : BINARY TREE 3. Kunjungan terhadap TREE : PREE ORDER, INORDER dan POST ORDER 4. Mendefinisikan struktur TREE dengan pointer 5. Aplikasi : notasi matematik : PREFIX, INFIX dan POSTFIX D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian Penutup 1. Menjelaskan pengertian tree, jenis-jenis tree, binary tree 2. Menjelaskan dan memberi contoh penggunaan kunjungan terhadap tree: pree order, in order dan post order 3. Menjelaskan dan memberi contoh aplikasi prefix, postfix dan infix Memberi kesempatan bertanya dan memberi tugas/PR Memperhatikan dan bertanya Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP Diskusi E. EVALUASI 29 - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 30 SATUAN ACARA PERKULIAHAN 12 Mata kuliah Jurusan Program Studi Jenjang Kredit Lama Pertemuan ke : Struktur Data : Teknik Informatika : Teknik Informatika : Sarjana : 3 SKS : 150 menit : 12 A. TUJUAN 1. Tujuan Instruksional Umum Setelah mengikuti mata kuliah Struktur Data ini mahasiswa dapat mengenal, mengetahui, menerapkan berdasarkan berbagai struktur data dalam lingkup pemrograman dan membuat aplikasi/program sederhana dari setiap bahasan. 2. Tujuan Instruksional Khusus Mahasiswa dapat mengenal, mengetahui,dan membuat program dan menerapkan konsep searching dan penerapan dalam olah data B. POKOK BAHASAN : searching C. SUB POKOK BAHASAN 1. Beberapa model search 2. Linear search 3. Binary search 4. Binary tree search Aplikasi : kamus D. KEGIATAN BELAJAR MENGAJAR Tahap Kegiatan Kegiatan Mengajar Kegiatan Mahasiswa Pendahuluan Pengantar Mereview kuliah sebelumnya, memberi kesempatan mahasiswa untuk bertanya Memperhatikan, bertanya, menjawab pertanyaan Penyajian 1. Menjelaskan pengertian searching; mengenalkan jenisjenis seraching 2. Menjelaskan dan memberi contoh penggunaan linier searching 3. Menjelaskan dan memberi contoh penggunaan binary search 4. Menjelaskan dan memberi contoh penggunaan binary tree search Memperhatikan dan bertanya Penutup Memberi kesempatan bertanya dan memberi tugas/PR Diskusi Media & Alat Pengajaran Papan Tulis & OHP Papan Tulis & OHP 31 E. EVALUASI - Memberi tugas pemrograman singkat/PR F. SUMBER PUSTAKA 1. Jogiyanto H.M., Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal, Andi Offset, Yogyakarta, 1985. 2. Lewis, T. B., & Smith M. Z., Applying Data Structures, 2nd edition, Houghton Mifflin Company, Boston. 3. Santosa, P. I., Struktur Data Menggunakan TurboPascal, Andi Offset, Yogyakarta, 1992. 4. Sedgewick, R., Algorithms, Addison Wesley Company Inc., Masachussets, 1983. 5. Stubbs, T. D. & Neil, W. W., Data Structures with Abstract Data Types and Pascal, Brook / Cole Publishing Company, 1984. 6. Tanembaum, A., Data Structures Using Pascal, Prentice-Hall, Englewood Clift, New York, 1976. 7. Wirth, N., Algorithm + Data Structure = Programs, Prentice-Hall, Englewood Clift, New Jersey, 1976 32