RENCANA PROGRAM DAN
KEGIATAN PEMBELAJARAN
SEMESTER (RPKPS)
Nama Matakuliah : Algoritma dan Struktur Data 1
Kode/SKS
: MAI 4104A / 3 SKS
Disusun oleh:
Bayu Rahayudi, MT, MM
Program Studi Ilmu Komputer
Jurusan Matematika
A. DESKRIPSI MATA KULIAH
Kemampuan membuat algoritma adalah kemampuan dasar yang harus dimiliki seseorang untuk membuat suatu program komputer. Agar program yang dihasilkan dapat berjalan dengan kinerja yang baik maka diperlukan pengetahuan tentang struktur data.
B. PERENCANAAN PEMBELAJARAN
1. Nama Matakuliah : Algoritma dan Struktur Data 1 2. Kode/SKS : MAI 4104A / 3 SKS 3. Semester : 3 (Ganjil)
4. Prasyarat : MAI 4101A Pemrograman 1 5. Status mata kuliah : Wajib
6. Tujuan Pembelajaran
Mahasiswa mengetahui tentang konsep algoritma dan langkah-langkah membuatnya
Mahasiswa mengetahui alternatif penyusunan algoritma dengan menggunakan flowchart dan pseudo-code
Mahasiswa memahami tentang macam-macam tipe data dan penggunaannya Mahasiswa memahami tentang prosedur dan fungsi, serta fungsi rekursif Mahasiswa memahami tentang proses stack (tumpukan) dan queue (antrian) Mahasiswa memahami tentang link-list (senarai berantai)
Mahasiswa memahami tentang tree (pohon) Mahasiswa memahami tentang graph
Mahasiswa memahami berbagai macam algoritma pengurutan data Mahasiswa memahami berbagai macam algoritma pencarian data
7. Outcome Pembelajaran
Setelah menyelesaikan kuliah ini mahasiswa diharapkan dapat :
Memahami konsep algoritma dan langkah-langkah membuatnya
Memahami tentang macam-macam tipe data dan penggunaannya Memahami tentang prosedur, fungsi dan fungsi rekursif
Memahami tentang proses stack (tumpukan) dan queue (antrian) Memahami tentang link-list (senarai berantai)
Memahami tentang tree (pohon) Memahami tentang graph
Memahami berbagai macam algoritma pengurutan data dan implementasinya
Memahami berbagai macam algoritma pencarian data dan implementasinya
8. Topik dan Jumlah Jam yang Diperlukan
No Jenis Kegiatan Cacah
Kegiatan
Jumlah Jam (@50 menit)
1 Pendahuluan 1 Kali 1 Jam
2 Konsep Algoritma 1 Kali 2 Jam
3 Flowcharting dan Pseudocode 2 Kali 3 Jam
4 Tipe Data 2 Kali 3 Jam
5 Fungsi, Prosedur dan Fungsi Rekursif 2 Kali 3 Jam 6 Stack (Tumpukan) dan Queue (Antrian) 2 Kali 3 Jam
7 Link List (Senarai Berantai) 4 Kali 6 Jam
8 Tree (Pohon) 4 Kali 6 Jam
9 Graph 4 Kali 6 Jam
10 Algoritma Pengurutan Data 4 Kali 6 Jam
11 Algoritma Pencarian Data 2 Kali 3 Jam
9. Jadwal Kegiatan Mingguan
Minggu
ke-Pokok Bahasan Sub Pokok bahasan Waktu Metode pembelajaran
1 Pendahuluan Pengenalan Materi Kuliah
Penjelasan Aturan Perkuliahan (Kontrak Kuliah)
1 50 Menit
Ceramah
Menggunakan notebook dan Infokus
Konsep
Algoritma Menjelaskan tentang aturan dan langkah-langkah penyusunan algoritma
2 50 Menit
Ceramah Menggunakan
2 Flowchart dan
Pseudocode Menjelaskan tentang simbol-simbol dan aturan pembuatan flowchart
Menjelaskan tentang aturan dan langkah-langkah penyusunan pseudocode
3 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
3 Tipe Data Menjelaskan tentang macam-macam tipe data dan
implementasinya
3 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus 4 Fungsi,
Prosedur dan Rekursif
Menjelaskan tentang fungsi dan
implementasinya Menjelaskan tentang
prosedur dan implementasinya Menjelaskan tentang
fungsi khusus (rekursif)
3 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
5 Stack
(Tumpukan) dan Queue (Antrian)
Menjelaskan tentang konsep stack dan implementasinya Menjelaskan tentang
konsep queue dan implementasinya
3 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
6,7 Link list (Senarai berantai)
Menjelaskan tentang konsep senarai berantai Menjelaskan tentang
senarai berantai tunggal Menjelaskan tentang
senarai berantai ganda Menjelaskan tentang
senarai berantai berputar
6 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
8 UTS UTS
Pembahasan UTS
3 x 50 Menit 9,10 Tree (Pohon) Menjelaskan tentang
konsep tree
Menjelaskan tentang tree tranversal (kunjungan tree) Menjelaskan tentang
Binary tree
6 50 Menit
Ceramah Menggunakan
Menjelaskan tentang AVL Tree
11,12 Graph Menjelaskan tentang
konsep Graph
Menjelaskan tentang implementasi algoritma Graph
6 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus 13,14 Algoritma
Pengurutan Data Menjelaskan tentang algoritma pengurutan data
Mengimplementasikan buble sort, maximum/ minimum sort, quick sort, shell sort, merge sort dan radix sort
6 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
15 Algoritma
Pencarian Data Menjelaskan tentang algoritma pencarian data
Mengimplementasikan sequential search, binary search
6 50 Menit
Ceramah Menggunakan
papan tulis, notebook dan Infokus
16 UAS Persiapan UAS
UAS
3 50 Menit
10. Penilaian
Penilaian didasarkan pada komposisi tugas (minimal 8 tugas), ujian tengah semester dan ujian akhir semester. Beberapa tugas terdiri beberapa tugas mandiri dan kelompok yang memberikan kontribusi 40%, ujian tengah semester 30%, ujian akhir 30%. Total nilai akhir adalah 100%.
Nilai Akhir Perkiraan nilai angka (%)
0 nilai akhir 44
11. Bahan, Sumber Informasi dan Referensi
Insap Santoso, Struktur Data menggunakan Turbo Pascal 6.0, Andi Offset, Yogyakarta
Robert L. Kruse, Alexander J. Ryba, Data structures and program design in C++
P.S. Deshpande and O.G. Kakde, C & Data Structures, Charles River Media, 2004