SILABUS
Kode Mata Kuliah : KP003
Nama Mata Kuliah : Algoritma dan Struktur
Data 2
Beban Kredit : 3 SKS (Pilihan)
Prasyarat : Algoritma dan Struktur Data 1
Strategi :
1.Menjelaskan dan memberi kesempatan kepada maha-siswa untuk bertanya .
2. Memberikan kesempatan kepada mahasiswa mengerjakan soal di papan tulis.
3. Memberikan Pekerjaan Rumah. 4. Memberikan Quiz di kelas.
Media : 1 Papan Tulis 2. OHP
3. LCD Proyector
Evaluasi :
1. Mengerjakan soal di papan tulis
2. Pekerjaan Rumah 3. Quiz di kelas
.
Uraian : Mata kuliah ini memberikan :
Pengetahuan kepada mahasiswa tentang bermacam-macam jenis struktur data, dan algoritma penggunaannya serta implementasi / aplikasinya.
Sasaran : Mahasiswa mampu memilih struktur data serta algoritma yang tepat sesuai kebutuhan pengolahan dengan mempertimbangkan kompromi antara penggunaan memory yang sehemat mungkin dan waktu pengolahan yang secepat mungkin.
Daftar Pustaka:
1 Aaron M Tenenbaum, Moshe J Augenstein, Yedidyah Langsam, : “ Data Structures Using C And C++”, Prentice Hall International Edition, 1996. 2 Aho & Ullman, "The Design & Analysis of Computer Algorithms", Adison Wesley
3 Ellis Horowitz, Satraj Sahni, : “Fundamentals of Data Structures” ; Computer Science Press. 4 Goodman & Hedetniew, " Introduction To Design & Analysis of Algorithm", McGraw-Hill, 1997. 5 Horrowitz, Ellis & Satraj Sahni; "Fundamental of Computer Algorithms"; Computer Science Press, 1988. 6 Jean Paul Tremblay, Paul G. Sorenson : “An Introduction To Data Structures With Aplications”, McGraw-Hill 7 Niklaus Wirth, : “Algorithms & Data Structure”, Prentice Hall International Editions.
8 Niklaus Wirth, : “Algorithms + Data Structures = Programs “, Prentice Hall.
9 Robert L. Kruse, Bruce P. Leung, Clovis L. Tondo;" Data Structures and Program Design in C"; Prentice Hall International Edition, 1996 10 Robert Lafore ; "Data Structure& Algorithm in JAVA"; Second Edition, Sams. 2003
11 Sahni Satraj; "Data structures, Algorithms, and Applications in C++"; Mc GrawHill, 1998.
12 Sedgewick, Robert; "Algorithm in (C/ Pascal / C++ )"; Addision Wesley Publishing Company, USA, 1990
13 Sedgewick, Robert and Flajolet, Philppe; "An Introduction to the Analysis of Algorithms"; Addison Wesley, 1996.
14 Trembley, Jean Paul & Richard B. Bunt, "Introduction to Computer Science : An Algoritmic Approach"; McGraw-Hill Inc, 1989
Tatap
Muka Pokok Bahasan
Tujuan Instruksional
Materi Strategi Media Evalu
asi Sumber
Umum Khusus
1. 1. Struktur Stack
- Stack Satu Sisi - Stack dua sisi
Memahami :
prinsip atau konsep dan penggunaan struktur stack
Dapat : 1Menyusun
algoritma operasi pada stack. 2Menyebutkan
beberapa contoh penggunaan stack baik pada compiler maupun pada Operating System , dan pada program aplicasi
1. Jenis-jenis Struktur Data. 2. Array satu dimensi, indeks
dan pointer.
3. Pengertian Stack dan penggunaan array satu dimensi untuk stack. 4. Algoritma PUSH dan POP
Stack
5. Kondisi Stack : Kosong, Penuh, Bisa Diisi, Ada isinya. 6. Implementasi dengan
Linked List
7. Contoh Aplikasi Stack
1, 3 1, 2, 3 1, 2 .
2 & 3. Queue
- Linear Queu , - Circular Queue , - Double Ended Queue
Memahami:
Prinsip atau konsep dan penggunaan struktur Queue
Dapat :
1Memilih model queue yang tepat digunakan dalam pengolahan data. 2Menyusun
algoritma proses pada queue. 3Menyebutkan
beberapa contoh penggunaan queue
1. Pengertian Queue dan penggunaan array satu dimensi untuk queue 2. Algoritma Insert dan Delete
Queue
3. Kondisi : Kosong, Penuh, Bias Diisi, Aad isinya. 4. Implementasi dengan
Linked List
5. Contoh aplikasi Queue 6. Dequeue
7. Priority queue
1, 2, 3 1, 2, 3 1, 2
4.. Record structure Memahami jenis-jenis record yang
Dapat : 1Menentukan
struktur suatu
1. Memebentuk record dengan
stuct
2. Typedef dan union
Tatap
Muka Pokok Bahasan
Tujuan Instruksional
Materi Strategi Media Evalu
asi Sumber
Umum Khusus
ada dalam sebuah program
record sesuai dengan keperluan data yang
disimpan.
2Dapat menuliskan dan menggunakan struktur record dalam program 3Membedakan Fixed
Record & Variant Record
4Mengoperasikan Record dalam program
3. Array of Structure 4. Fixed Record 5. Variant Record 6. Operasi Record 7. Memory Mapping
5 & 6. Linear Singly Linked
List
Memahami: konsep dan bentuk penyimpanan data dalam memori secara dinamis, berupa Linear Singly Linked List ,
Dapat : 1Memilih
menggunakan array satu dimensi atau Linked List untuk data dan maksud pengolahan yang sama.
2Menuliskan algoritma untuk mengoperasikan Linear Linked List. 3Menggunakan
Linked List untuk proses dengan prosedur Stack atau Queue
1. Record (struct) structure 2. Pointer sebagai link 3. Algoritma operasi pada
Linked List : Create, Insert, Delete, Retrieve
4. Penggunaan Linear Singly Linked List sebagai STACK 5. Operasi Pointer dan Linear
Singly Linked List
Muka Pokok Bahasan Umum Khusus Materi Strategi Media asi Sumber
7. Linear Doubly Linked List
Memahami bentuk penyimpanan data dalam memori yang berupa Linear Doubly Linked List
Dapat :
1Memilih singly atau doubly Linked List untuk data dan maksud pengolahan yang sama.
2Menuliskan algoritma untuk mengoperasikan Linear Doubly Linked List.
3Menggunakan Linked List untuk proses dengan prosedur Stack atau Queue
1. Konsep Pointer dan Linear Doubly Linked List 2. Operasi Pointer dan Linear
Doubly Linked List
1, 2, 3, 4 1, 2, 3 1, 2, 3
8. Ujian Tengah
Semester
9. Tree .Memahami :
Tipe data obyek yang berupa tree dan aplikasinya (penggunaanya) dalam
pemrograman
Dapat :
1 Menyatakan bentuk data yang
mempunyai hubungan elemen one to many kedalam suatu bentuk pohon. 2 Menuliskan struktur
record suatu
1. Terminologi Tree 2. Karateristik Tree 3. Elemen-elemen tree 4. M-ary Tree dan Binary Tree 5. Bentuk khusus Binary Tree 6. Konversi M-ary tree menjadi
Pohon Biner
7. Menghitung jumlah node 8. Membuat struktur node
dengan struct
Tatap
Muka Pokok Bahasan
Tujuan Instruksional
Materi Strategi Media Evalu
asi Sumber
Umum Khusus
elemen (node) sebuah pohon. 3 Menuliskan
algoritma untuk mengcreate dan membaca pohon biner
4 Dapat
mengkonversikan struktur pohon biner menjadi struktur array satu dimensi.
10. Representasi
Aritnhmetic Statement ke dalam Pohon Biner
Memahami : 1 Konsep compiler
memandang Arithmetic Statement yang ditulis dalam suatu bahasa pemrograman
Dapat :
1Menggambarkan representasi arithmetic dalam pohon biner 2Meyatakan urutan
pelaksanaan suatu arithmetic
statement yang direpresntasikan kedalam pohon biner.
1. Representasi Arithmetic Statement ke dalam pohon Biner
2. Penelusuran Pohon Biner secara inorder.
- idem - - idem - - idem -
11. Penelusuran Pohon Biner
Memahami : Konsep
penggunaan pohon biner dalam dalam mengevaluasi ekpresi arithmetika
Dapat :
1 Membaca pohon biner baik dengan cara Inorder, Preorder, dan Postorder
1. Penelusuran : Inorder, Preorder, Postorder Pohon Biner
2. Algoritma penelusuran
Muka Pokok Bahasan Umum Khusus Materi Strategi Media asi Sumber
2 Menyatakan ekpresi arithmatika yang tertuang dalm suatu pohon biner
3. Binary Tree, Operasi, dan Implementasi
4. Binary Search Tree (BST): Operasi dan Implementasi 5. Heap: Operasi dan
implementasi 6. B-Tree: Order dan
implementasi
AVL Tree (Adelson-Velskii Landis Tree): operasi dan
implementasi- idem –
12. Konversi, Infix, Prefix dan Postfix
Memahami: Bahwa bentuk arithmetic yang digunakan oleh komputer (Compiler dan Operating System) misal Postfix atau Prefix berbeda dengan bentuk Infix yang digunakan oleh manusia sehari-hari.
Dapat :
Menyatakan hasil konversi antar tiga macam bentuk : Infix, Prefix dan Postfix
Konversi antar bentuk Infix, Prefix dan Postfix
1, 2, 3, 4 1, 2, 3 1, 2, 3
13. Graph Memahami
aplikasi-aplikasi yang dapat diterapkan dalam Graph
Dapat :
Memahami bahwa beberapa problem dapat dikonversikan ke dalam Graph
1. Terminologi Graph 2. Weighted Graph
3. Minimum Spanning Tree 4. Representasi Graph kedalam
Matrix dan Linked List 5. Penelusuran Graph: DFS
dan BFS
Tatap
Muka Pokok Bahasan
Tujuan Instruksional
Materi Strategi Media Evalu
asi Sumber
Umum Khusus
Menjelaskan Teknik penting seperti BFS & DFS
6. Shortest Path 7. critical path
14. Searching Memahami : Metoda-metoda Searching serta perhitungan waktu dengan
menggunakan Notasi Big-Oh
Dapat :
1. Menyebutkan metode searching, perbedaan dan masing-masing pemakaiaannya 2. Memilih metode searhing yang tepat untuk suatu karakristik data tertentu. 3. Menghitung
Tingkat Kompleksitas waktu pencarian
1. Sequential Search 2. Binary Search 3. Fibonacci Search 4. Binary Tree Search 5. Balance Tree Search 6. Hashing
7. External searching 8. Big-Oh
1, 2, 3 1, 2, 3 1, 2
15. Sorting Memahami :
Metoda-metoda pengurutan ( internal Sorting) serta perhitungan waktu dengan menggunakan Notasi Big-Oh
Dapat :
1. Memilih metode sorting yang paling efisien untuk suatu karakteristik data. 2. Menyebutkan
metode Sorting, perbedaan dan masing-masing pemakaiaannya 3. Menyebutkan
Tingkat Kompleksitas
1. Bubble Sort 2. Selection Sort 3. Insertion Sort 4. Shell Sort 5. Quick Sort 6. Big-Oh
Muka Pokok Bahasan Umum Khusus Materi Strategi Media asi Sumber
waktu pengurutan
16. Ujian Akhir
Semester
Pertemuan 1- 15
Pengesahan
Jakarta, 23 Juni 2010 Membuat,
Dosen Koordinator
Ir. M. Sjukani, MM
Mengetahui dan Menyetujui
Ketua Program Studi Sistem Komputer