Deskripsi Mata Kuliah
Mata kuliah Struktur Data merupakan salah satu mata kuliah dasar dalam bidang ilmu komputer yang mempelajari cara mengorganisir, menyimpan, dan mengelola data secara efisien. Dalam mata kuliah ini, mahasiswa akan diperkenalkan pada berbagai jenis struktur data, baik yang sederhana maupun kompleks, serta algoritma yang digunakan untuk memanipulasi struktur data tersebut. Bahasa pemrograman yang digunakan dalam praktikum dan proyek adalah Python.
CPMK
- Mahasiswa mampu menjelaskan sejarah dan konsep algoritma dan struktur data, mengasosiasikan dan membedakan hubungan antara algoritma dan struktur data, dan mampu mencontohkan atau mengilustrasikan implementasi algoritma dan strutkur data pada perangkat lunak.
- Mahasiswa mampu mengaplikasikan input, process, dan output serta merancang algoritma untuk menyelesaikan kasus sederhana menggunakan notasi algoritma seperti kalimat deskriptif, flowchart, dan pseudo code.
- Mahasiswa mampu menjelaskan jenis-jenis dan perbedaan bahasa pemrograman dan mampu menggunakan bahasa pemrograman Python, mulai dari instalasi, menulis kode, dan menjalankan kode.
- Mahasiswa mampu menjelaskan tentang tipe data, operator, variabel, dan nilai serta mampu mengaplikasikan tipe data, operator, variabel, dan nilai tersebut pada bahasa pemrograman Python.
- Mahasiswa mampu menganalisis konsep algoritma runtutan, percabangan, dan perulangan serta mampu mengaplikasikan algoritma-algoritma tersebut pada bahasa pemrograman Python
- Mahasiswa mampu menjelaskan konsep struktur data array, tupple, dan linked list serta mengaplikasikan pengolahan data array, tupple, dan linked list menggunakan bahasa pemrograman Python
- Mahasiswa mampu menjelaskan konsep struktur data stack dan queue serta mengaplikasikan pengolahan data stack, queue menggunakan bahasa pemrograman Python
- Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pencarian (searching) dan mampu menghasilkan aplikasi pencarian sederhana menggunakan bahasa pemrograman Python
- Mahasiswa mampu menjelaskan konsep dan jenis-jenis algoritma pengurutan (sorting) dan mampu menghasilkan aplikasi pengurutan sederhana menggunakan bahasa pemrograman Python
- Mahasiswa mampu menjelaskan konsep algoritma Big-O, Greedy, Backtracking, Dynamic Programming, Divide and Conquer, A*, dan Knapsack Problem