Anda di halaman 1dari 5

SILABUS

I. IDENTITAS MATA KULIAH

1. Nama Mata Kuliah : Analisis Algoritma


2. Kredit : 2 SKS
3. Semester : V (Ganjil)
4. Tingkat : III
5. Jenjang : S1 (Strata Satu)
6. Sifat Mata Kuliah : Wajib
7. Dosen : 1. Adam Mukharil Bachtiar, S.Kom., M.T. (Koordinator)
2. Ken Kinanti, S.Kom., M.T.

II. TUJUAN INSTRUKSIONAL UMUM

Setelah mempelajari mata kuliah Analisis Algoritma, mahasiswa Program Studi Teknik Informatika
diharapkan dapat memahami dan menghitung kompleksitas algoritma dari sisi waktu serta dapat
menganalisis strategi algoritma pada suatu kasus dan mengimplementasikan strategi algoritma yang
dipelajari ke dalam suatu kasus.

III. TUJUAN INSTRUKSIONAL KHUSUS

Setelah mempelajari mata kuliah Analisis Algoritma, diharapkan mahasiswa mampu untuk:
1. Memahami konsep analisis algoritma dan strategi algoritma beserta kegunaannya.
2. Menganalisis kompleksitas algoritma berdasarkan kebutuhan waktu dan ruang.
3. Menganalisis kompleksitas algoritma menggunakan notasi asimptotik.
4. Menerapkan strategi algoritma terhadap kasus pemrograman.
5. Menganalisis strategi algoritma yang bisa dan optimal digunakan pada suatu kasus pemrograman.

IV. METODE PERKULIAHAN

1. Ceramah
2. Simulasi
3. Kuliah lapangan
4. Diskusi
5. Tugas Besar

V. NILAI AKHIR

NA = 30% Tugas dan Quiz + 30% UTS + 40% UAS

NILAI INDEKS PREDIKAT


80≤NA≤100 A Lulus, sangat baik
65≤NA<80 B Lulus, baik
45≤NA<65 C Lulus, cukup
30≤NA<55 D Lulus, kurang
0≤NA<30 E Tidak lulus

1
VI. MATERI PERKULIAHAN (PER PERTEMUAN)

PERTEMUAN KE- MATERI

PENDAHULUAN ANALISIS DAN STRATEGI ALGORITMA


a. Penjelasan Analisis dan Strategi Algoritma
b. Kenapa Menganalisis Algoritma
c. Kenapa Memahami Strategi Algoritma
1
d. Tiga Komponen Algoritma
e. Spesifikasi Masalah
f. Algoritma dan Kompleksitasnya
g. Langkah-langkah Mendesain Algoritma

LANGKAH AWAL DALAM ANALISIS ALGORITMA


a. Proses Desain dan Analisis Algoritma
b. Penjelasan Tipe-tipe Masalah Dalam Algoritma:
1) Pengurutan
2) Pencarian
3) Pemrosesan String
4) Graph Problem
5) Problem Kombinatorik
2
6) Problem Geometrik
7) Problem Numerik
c. Efisiensi Algoritma
d. Analisis Framework:
1) Mengukur Jumlah Input
2) Unit Pengukuran Running Time
3) Operasi Dasar dan Tingkat Pertumbuhan
4) Efisiensi Worst, Best, dan Average Case

2
PERTEMUAN KE- MATERI

KOMPLEKSITAS ALGORITMA
a. Penjelasan Umum Kompleksitas Algoritma
b. Model Perhitungan Kebutuhan Ruang dan Waktu
3
c. Kompleksitas Waktu (T(n))
d. Jenis Kompleksitas Waktu (Tmax(n),Tmin(n), dan Tavg(n))
e. Studi Kasus Menghitung Kompleksitas Waktu

KOMPLEKSITAS WAKTU ASIMPTOTIK


a. Penjelasan Umum Kompleksitas Waktu Asimptotik
b. Notasi Kompleksitas Waktu Asimptotik (O(n))
4
c. Aturan Menghitung Kompleksitas Waktu Asimptotik
d. Pengelompokan Algoritma Berdasarkan Notasi O(n)
e. Studi Kasus Menghitung O(n)

NOTASI ASIMTOT UNTUK ANALISIS EFISIENSI WAKTU


a. Penjelasan Umum Notasi Asimtot
b. Penjelasan Notasi O(n) (Big Oh)
c. Penjelasan Notasi 𝛺(n) (Big Omega)
d. Penjelasan Notasi 𝛩(𝑛) (Big Theta)
e. Kelas-kelas Efisiensi Dasar (beserta contoh kasusnya):
1) Class: 1
5 dan 6
2) Class: log n
3) Class: n
4) Class: n log n
5) Class: n2
6) Class: n3
7) Class: 2n
8) Class: n!

7 Quiz dan Persiapan UTS

8 UTS

3
PERTEMUAN KE- MATERI

STRATEGI ALGORITMA: BRUTE FORCE BAGIAN 1


a. Penjelasan Umum Brute Force
9 b. Karakteristik Brute Force
c. Keunggulan dan Kelemahan Brute Force
d. Contoh Kasus yang Menggunakan Brute Force

STRATEGI ALGORITMA: BRUTE FORCE BAGIAN 2


a. Penjelasan Exhaustive Search
10 b. Studi Kasus Exhaustive Search
c. Penjelasan 1/0 Knapsack Problem
d. Studi Kasus Exhaustive Search

STRATEGI ALGORITMA: GREEDY BAGIAN 1


a. Penjelasan Umum Greedy
b. Elemen-elemen Algoritma Greedy
11 c. Karakteristik Greedy
d. Contoh Kasus Greedy
e. Integer Knapsack (Greedy by Profit, Weight, dan Density)
f. Fractional Knapsack

STRATEGI ALGORITMA: GREEDY BAGIAN 2


a. Kasus Penjadwalan
b. Kasus Pohon Merintang Minimum:
12
1) Algoritma Prim
2) Algoritma Kruskal
c. Shortest Path Menggunakan Algoritma Djikstra

STRATEGI ALGORITMA: DYNAMIC PROGRAMMING


a. Penjelasan Umum Dynamic Programming
b. Prinsip Optimalitas
c. Karakteristik Persoalan Dynamic Programming
13 dan 14
d. Pendekatan Dynamic Programming (Forward dan Backward)
e. Langkah-Langkah Pengembangan Algoritma Dynamic
Programming
f. Contoh Kasus Penerapan Dynamic Programming

4
PERTEMUAN KE- MATERI

STRATEGI ALGORITMA: DIVIDE AND CONQUER


a. Penjelasan Umum Divide and Conquer
15 b. Karakteristik Divide and Conquer
c. Konsep Divide, Conquer, dan Combine
d. Contoh Kasus Penerapan Divide and Conquer

16 UAS

Anda mungkin juga menyukai