RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER (RPKPS)
ot*s
nrr
\i*
i,m.$ a
'.'rr
rr -
i;l,r-ii
--d-
|
i+r'
NAMA MATAKULIAH
ALGORITMA DAN STRUKTUR DATA
DISUSUN OLEH: Kharis Widyatmoko, M.Kom Suharnawi, M.Kom
U
FAKULTAS ILMU KOMPUTER NIVERSITAS DIAN N USWANTORO NOVEMBER 2O08
HALAMAN PENGESAHAN
RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER (RPKPS)
Judul Matakuliah
Algoritma dan Struktur Data
Penyusun
\-
.
Anooota
N"ma""
Kharis Widyatmoko, M.Kom
NPP
0686.1
Pangkat/Golongan Jabatan sekarang
Asisten ahli/lllA
1 .1
998.1 59
Dosen
.
Ketua Nama NPP
Pangkat/Golongan Jabatan sekarang
Suharnawi, M.Kom 0686.1 1.1995.071
Lektor/lllD Dosen
Semarang, November2008 Mengetahui: Ketua Program Studi
Penyusun,
Mulvono, S.Si., M.Kom
Kharis Widyatmoko, M.Kom NPP. 0686.1 1 .1 998.1 59
I\HH.
Dekan Fakultas llmu Komputer
Dr. Yuliman Purwanto, M.Eng NPP. 0686.1 I .1 993.040
RPKPS Algoritma dan Struktur Data, Hal. : 2
A. NAMA MATAKULIAH B. KODE/SKS
: Algoritma dan Struktur . 46304 /4SKS : 3/Ganjil : Wajib
Data
C. SEMESTER D. STATUS MATAKULIAH E. MATA KULIAH PRASYARAT : Dasar pemrograman F" DESKRIPSI SINGKAT MATAKULIAH : Setelah mengikuti teori algoritma dan struktur data mahasiswa mampu menyelesaikan masalah pemrograman dengan algoritma yang tepat dengan menggunakan struktur data yang benar.
G. SILABUS MATAKULIAH
'1 Review Pemrograman Dasar
)
+ + t
Sekilas sejarah pemrograman (motivasi, tokoh, fungsi dan peranan pemrograman dalam bidang rekayasa komputer). Pemrograman Prosedural.
PemrogramanFungsional. Pemrograman Event-Driven
2. Struktur Data
) ) t ) ) t ) + )
Aprox 3x pertenuan
i comment [Nr2]:
Aprox 2r pertenruan
INI3]:
Aprox 3r perlernual
lomment [NI4]:
Aprox 4rpertemLLrn
Arrays Records String dan Proses String Representasi Data dalam Memory Pointer Struktur Linked Pemanfaatan Stacks, queues Pemanfaatan Graphs dan Tree
3. Konsep Dasaf AlgOfithma Konsep Rekursi
)
Komputasi
4. Analisa Algoritma Dasar Strategi Pemecahan Masalah lmplementasi Strategi Melalui Algorithma Strategi Debugging Konsep dan Properti dari Algorithma Pemecahan Terstruktur (structured decomposition)
) t ) ) )
5. AlgOfitmiC
) )
INI1]:
I Comment
Tipe Data Primitif
Stfategi
Strategi pemecahan Masalah lmplementasi Strategi Melalui Algorithma
RPKPS Algoritma dan Struktur Data" Flal. : 3
I Comment
llu-*t,*:msmpaik4nsecarxsekrras lrrtikberatpadatipcdatastatik
6
+ ) )
Strategi Debugging Konsep dan Propefti dari Algorithma Pemecahan Terstruktur (structured decomposition) Software Validation ) Struktur Kendali
H. TUJUAN PEMBELAJARAN Mahasiswa mampu memahami logika berpikir komputer, memahami prinsip kerja program, mampu menggambarkan logika jalannya program secara tertulis dengan algoritnra (pseudo code) dan dengan diagram alir (flow chart), serta mahasiswa diharapkan dapat memahami konsep masing-masing struktur data, memilih struktur data yang tepat untuk setiap kasus, mengimplementasikan setiap struktur data ke dalam program.
l. . . .
HASIL (OUTCOME) PEMBELAJARANT memahami alur jalannya program memahami pemanfaatan data sesuai dengan peruntukannya secara tepat. mengaplikasikan algoritma dan struktur data dalam pembuatan program yang lebih cepat prosesnya sesuai dengan alur yang benar dan semakin efisian menggunakan sumber daya sesuai dengan penerapan struktur data yang benar.
J.
METODE PEMBELAJARAN DAN ALOKASI WAKTU Kegiatan di dalam kelas (4 SKS x 14 minggu): a. Penjelasan kuliah = 10 jam b Kuliah ceramah = 22 Jam c. Diskusi kelompok & kelas = 16 jam d Presentasi tugas kelompok = 8 jam
e.Ujian
Total
= 4 Jam = 60 jam ( 16
pertemuan)
Yang dimaksud dengan jam di sini adalah jam pelajaran (50 menit) sesuai dengan definisi SKS. Selain itu, karena 1 SKS mengandung kegiatan untuk tugas mandiri yang terencana, maka diberikan pula kegiatan berikut: Tugas terencana di luar kelas (2 SKS x 16 minggu): a.Tugas lndividu = 16 jam b. Tugas kelompok = 16 jam c. Studi mandiri = 16 jam
total
=
48 jam
K. ATURAN PERKULIAHAN Peserta kuliah wajib mengikuti perkuliahan minimal 75o/o dari jumlah pertemuan dalam satu semester sebagai persyaratan untuk dapat mengikuti ujian akhir.
RPKPS Algoritnia dan Struktur Data. FIal. : 4
: Comment
INf5]: Aprox 4x pertemuan Tipe data djnarnis di5snp3ikan secara si:kilas I sebagar balDn wacana. Trr,k berst pJdc lrpi darr sratrk
Mahasiswa yang tidak memenuhi batas kehadiran minimal mengikuti ketentuan
yang berlaku di akademik.
L. RENCANA Minggu ke 1
z
1
KEGIATAN PEMBELAJARAN MINGGU AN Topik (Pokok Bahasan)
. .
Kontrak Kuliah
PengantarAiqg.r!!ma dan Pemrograman - Apa itu algoritma - Kegunaan dan contoh
I
t_o_WE! s1!_.dqn_
Bah
a
sa
P
em rog ra ma n
- Flowchart - Mengenal C++ 4
Metode Pembelajaran
a
o
a o
Ceramah & diskusi Menggunakan papan tulis, spidol, notebook dan lnfokus
Eerulals€n]|spilts)
- For, While, DoWhile - Break dan Continue - Nested Loop - Contoh kasus dan latihan! 6
ArrAy L: Arra)r 1 dimensi dan operasinva
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah & diskusi Menggunakan papan tulis, spidol, notebook dan lnfokus
Tipe Data, Keyword, Operator dan Kondisi (Percabanqan) - Tipe Data dan keyword - Operator dan Derajatnya - lF tunggal, bertingkat - Multiple Conditions - Switch Case
5
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah & Diskusi Menggunakan papan tulis, spidol, notebook dan lnfokus
. .
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus
o
Ceramah
- Definisi dan deklarasi - Kegunaan, sifat-sifat Array 1 dimensi - Contoh-contoh : add, search, edit, delete 7
Array 2 dimensi dan Manioulasi Strino
ITPKPS Algoritma dan Struktr,rr Data, Hal. :
S
- Apa itu String
- Berbagai hal menarik tentang String
I
UTS
I
F"urtggL
- Function - Parameter: formal dan aktual - Rekursi
.
Menggunakan papan tulis, spidol, notebook dan lnfokus
.
Soal Ujian
n .
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus
- Latihan 10
ADT (Abstract Data Type) dan Stack qerfS_an
drcy
. .
- Definisi dan Deklarasi - Kegunaan, sifat-sifat - Contoh-contoh - Stack dan kegunaanya 11
Struktur Data Antrian denqan Arrav
- Pengertian Antrian dan sifatnya - Deklarasi
. .
- Contoh penggunaan 12
13
Sortinq llan Searching Array - Bubble Solt - Selection Sort - lnsertion Sort
o
Pllrlcr
a
Pointer & Linked List 14
Stack (tumpukan) - Pengertian dan sifat-sifat - Contoh-contoh
15
Queue (antrian) - Pengertian dan sifalsifat - Contoh-contoh
16
UAS
o
a
. . . . o
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus
Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah & diskusi Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Ceramah Menggunakan papan tulis, spidol, notebook dan lnfokus Soal Uiian
RPKPS Algoritr.na dan Strr:ktur Data, Hal. : 6
M. PENJABARAN RKBM
1.
Kuliah minggu 1 Menjelaskan kontrak kuriah dan peraturan pelaksanaan praktikum
2
Kuliah Minggu 2 Menjelaskan pokok bahasan pengantar Algoritma dan Eemroqraman dst
3. Kuliah Minggu
3
Menjelaskan pokok bahasan Frowchart dan Bahasa pemroqraman.
4.
Kuliah Minggu 4 Menjelaskan pokok bahasan Tipe Data, Keyword, Operator dan Kondisi LP-srcagq!s@_t
5
Kuliah Minggu 5 Menjelaskan pokok bahasan perulangan (loopinq) - For, While, DoWhite - Break dan Continue Kuliah Minggu 6 Menjelaskan pokok bahasan Arrav 1 : Array 1 dimensi cian operasinya
7.
Kuliah Minggu 7 Menjelaskan pokok bahasan Array 2 dimensi dan Manipulasi String Pelaksanaan Ujian Tengah Semester (Minggu ke g) Pelaksanaan Ujian Te Kuliah Minggu g Menjelaskan pokok bahasan Funqsi - Fungsi tanpa parameter - Fungsi dengan parameter - Rekursi
10 Kuliah Minggu 10 Menjelaskan pokok bahasan ADT (Abstract Data Type) dan stack dengan Array 11 Kuliah Minggu 1 1 Menjelaskan pokok bahasan Str!{ktur Data Antrian denqan Array 12.
Kuliah Minggu 12 Menjelaskan pokok bahasan Softinq - Buble sort
dal Seqrching Arrav
RPKPS Algoritma dan Struktur Data, FIal. :
7
- Selection Sort - insertion Sort 13 Kuliah Minggu 13 Menjelaskan pokok bahasan Pointer - Single Linked List - Double Linked List - Operasi pada Linked List 14.
Kuliah Minggu 14 Menjelaskan pokok bahasan Stack (tumpukan) - Tumpukan dengan implementasi Linked List
15.
Kuliah Minggu 15 Menjelaskan pokok bahasan Queue (antrian) - Antrian dengan menggunakan Linked List
16. Pelaksanaan Ujian Akhir Semester (Minggu ke 16)
Pelaksanaan Ujian Akhir Semester Praktikum Algoritma dan Struktur Data
N. TUGAS Tugas harus ada pada setiap pokok bahasan.
O.KOMPONEN PENILAIAN '1.
Tugas
. 30 % Ujian Tengah Semester : 30% Ujian AKhir Semester .40oh 4. Standar konversi nilai yang direncanakan:
2 3
A:85-99 B:70-84 C:56-69 D:40-55 E:00-39
P. BAHAN, SUMBER INFORMASI DAN REFERENSI: Buku Utama: . lnggrianr
. .
: "Diktat Kuliah 1F223 Algoritma Teknik lnformatika lTB, 1998
dan Pemrograman", Departemen
Kernighan and Ritchie: "The C Programming Language", Prentice Hall, second edition, 1988 lnggriani : "Catatan Singkat Bahasa C", Departemen Teknik lnformatika lTB, 1
998
RPKPS Algoritma dan Struktr-rr Data" Hal. : 8
.
lnggriani : "Program Kecil dalam Bahasa C", Departemen Teknik lnformatika lTB, 1
998
Buku Tambahan: Loomis Mary E.S.., Data management and file structure, Prentice-Hall lnternational, lnc. 1
989
Perencanaan Monitoring dan Umpan Balik
1
2
3
Pendahuluan
. 2 jam tatap
1" Mhs. Mempunyai gambaran
. 2 jam tatap
Trpe Data. Kevword, Operator dan (qruLiql {Percabanqan) Pe-rsi-arsq.!
A{avl--Aryall. dimensi dan operasinya
7
2
Flowcllaft dan
(looping)
6
1. Mhs. Mempunyai gambaran
.
Aryey2
d$ers:
dan Manipulasi
Jam tatap muka (quesioner, tanya jawab, penugasan, pretest)
muka (quesioner, tanya jawab, penugasan, pretest)
Pe'nroqraman
5
muka (quesioner, tanya jawab, penugasan, pretest)
Pengantar Algoritma dan Struktur Data
D^h^^ud I ld)d
4
Pencapaian
Jenis Kegiatan
Topik
Minggu
. 2 jam tatap muka
.
tentang materi matakuliah Algoritma dan Struktur Data
tentang Algoritma dan Struktur Data
1. Mhs. Mempunyai gambaran
tentang Flowchaft dan Bahasa Pemroqraman
1. Mhs. Mempunyai gambaran
(quesioner, tanya jawab, penugasan, pretest)
tentang Tipe Data, Kevwnrd, Operator dan K-SfdiSl (Percabangan)
02 jam tatap muka (quesioner, tanya jawab, penugasan, pretest)
1. Mhs. Mempunyai gambaran
.2iam
tatap muka (quesioner, tanya jawab, penugasan, pretest)
. 2 jam tatap muka (quesioner, tanva
tentang Perulangan (loopinq)
1. Mhs. Mempunyai gambaran tentang Array 1 . Array 1
dimensi dan operasinva
1. Mhs. Mempunyai gambaran te nta n g A[Ay?_-d]$e_A!.1 d a n
RPKPS Algoritrra dan Struktr-rr Data. Llal. : 9
jawab, penugasan,
Strinq
Manipulasi Strinq
pretest) o
9
.
UTS
['rss-e,ilrl-d-a-[
tirnSsi
'l
2 jam ujian
" 2 iam tatap muka
(quesioner, tanya
jawab, penugasan,
. Mhs. Mampu
menyelesaikan soal dengan memanfaatkan array dan struktur kendali 1. Mhs. Mempunyai gambaran tentang ProSSd-Ufdal Funqsi
pretest) 10
Aal(AlrclI?qllelq
.
Iypel-de!-$Iee! denqan Array
11
.$tuKul Data
.
A$lar'ie!,san A rr: rr al,_'ir
tl
13
14
1E IJ
to
2 jam tatap muka (quesioner, tanya jawab, penugasan, pretest)
1. Mhs. Mempunyai gambaran tentang ADT iAbqtracl Data
2 jam tatap muka (quesioner, tanya jawab, penugasan, pretest)
1. Mhs. Mempunyai gambaran tentang Struktur Data
Sortinq dan Searchinq Array
. 2 jam tatap
Pointer
. 2 jam tatap
muka (quesioner, tanya jawab, penugasan, pretest)
Stack (tumpukan)
8U"-e_Ue
UAS
muka (quesioner, tanya jawab, penugasan, pretest)
(antrian)
. 2 jam tatap
.
.
Tvpe) dan Stack denqan Array
Antrian denqan Arrav
1. Mhs. Mempunyai gambaran
tentang Sortine dan Searching A'rav
1. Mhs. Mempunyai gambaran
tentang Pointer
muka (quesioner, tanya jawab, penugasan, oretest) 2 jam tatap muka (quesioner, tanya jawab, penugasan, oretesi)
1. Mhs. Mempunyai gambaran
2 jam ujian
1. Mhs. Mampu
tentang Stack (tumpukan)
1. Mhs. Mempunyai gambaran
tentang Queue (antrian)
menyelesaikan soal dengan berdasar algoritma dan struktur data yang tepat
RPKPS Algoritma dan Struktur Data,
Ilal. : l0