Deskripsi Mata Kuliah:

Memberikan pengetahuan tentang konsep struktur data dan algoritma dalam pemrograman serta menerapkan konsep struktur data dan algoritma untuk menyelesaikan masalah-masalah pemrograman


Deskripsi Kompetensi:

1.    Menelaah abstraksi data.

2.    Menelaah konsep array, record, dan pointer: deklarasi array, operasi dasar array (penciptaan dan penghancuran, penyisipan, pengambilan nilai, pemrosesan traversal, dan pencarian), sorting (Bubble Sort), array multidimensi, array dan pointer, struktur record, serta representasi record di memori.

3.    Menganalisis Sorting dan searching: insertion sort, selection sort, merging, merge sort, radix sort, tree sort, shell sort, searching dan modifikasi data.

4.    Menganalisis Stack: spesifikasi, representasi, dan aplikasi stack (ekspresi aritmatika,polish notation).

5.    Menganalisis Queue: spesifikasi queue, representasi queue (linier maupun circular), dan aplikasi queue.

6.    Menganalisis Dequeue: representasi sekuen dan operasi pada elemen dequeue.

7.    Menganalisis Priority Queue: representasi sekuen dan operasi pada elemen priority queue.

8.    Menganalisis Proses rekursif (Menara Hanoi dan implementasi prosedur secara rekursif menggunakan stack).

9.    Menganalisis Linked-list: deklarasi, operasi dasar (penciptaan dan penghancuran simpul,inisialisasi linked-list, penyisipan simpul, pengha-pusan simpul, penelusuran simpul, dan pencarian simpul), dan operasi terhadap linked-list (penghapusan, inversi, penyambungan, serta panjang linked-list).

10.  Menganalisis Varian singly linked-list: singly linked-list dengan last dan circular linkedlist (deklarasi, operasi, implementasi, dan pencarian simpul).

11.  Menganalisis Double linked-list: deklarasi dan operasi pada double linked-list.

12.  Menganalisis Tree: binary tree, traversing binary tree, algoritma traversal, threads, binary search tree, searching dan inserting dalam binary tree, heap sort, panjang path (algoritma Huffman).

13.  Menganalisis Hashing: Hash Table.

14.  Menganalisis Graph: representasi sekuensial, path terpendek (algoritma Warshall), representasi linked, operasi-operasi pada graph, traversing pada graph, dan poset (sorting secara topologi).

15.  Membangun program array.

16.  Membangun program linked-list.

17.  Membangun program sorting.

18.  Membangun program stack.

19.  Membangun program Queue dan Dequeue.

20.  Membangun program tree.

21.  Membangun program graph.