Pendahuluan
Mengulas pentingnya struktur data dalam meningkatkan
efisiensi suatu perangkat lunak, penjelasan mengenai topik-topik kuliah
dan prinsip-prinsip yang dipergunakan dalam penjelasan
Linked List: Pointer, Simple
One-way Linked-List
Mengulang penggunaan pointer serta penggunaannya
dalam memungkinkan struktur data linear yang dinamis (Linked-List) serta
proses-proses yang biasanya dilakukan pada struktur tsb.
Linked List: Dynamic Memory Allocation
Menjelaskan metoda alokasi ruang dalam memori secara
dinamis untuk efisiensi ruang keseluruhan serta pembandingannya terhadap
alokasi yang statis.
Linked List: Two-way Linked List, Circular Linked
List
Menjelaskan proses-proses yang dilakukan pada struktur-struktur
data linked-list yang lebih lanjut
Analisis Algoritma: Pengantar
Memberikan `sense and feel' dari pengukuran kompleksitas
algoritma dengan notasi-O (big-O notation) serta cara-cara penghitungannya
Analisis Algoritma: Studi Kasus beberapa algoritma
sederhana
Berlatih menghitung kompleksitas dari algoritma-algoritma
tsb adalah: Sequential Search, Binary Search, Merge Sort, Selection Sort
Rekursi: Berfikir Rekursif,
Contoh Algoritma Rekursif, Aplikasi Rekursif Pada Dunia Nyata
Melatih untuk mampu memahami algoritma-alagoritma
rekursif serta untuk dapat berfikir secara rekursif pula
Stack & Queue: Definisi
dan Aplikasi
Menjelaskan definisi, spesifikasi, serta manfaat
stack & queue untuk Pemeriksa Pasangan Tanda Kurung
Stack & Queue: Aplikasi Stack Untuk Konversi
infiks->postfiks
Contoh lain yang menunjukkan kemampuan dari stack
Tree: Tree, Traversal, Representasi
Menjelaskan definisi serta terminologi tree dan
struktur-struktur khusus dari tree seperti Binary Tree, Complete Binary
Tree, Perfect Binary Tree, berikut melakukan traverse dan bagaimana teknik
untuk merepresentasikannya
Tree: Heap, Heap Tree, Priority queue, Heapsort
Pembahasan suatu kelas CBT yang digunakan sebagai
priority queue dan algoritma Heapsort dengan representasi array
Tree: Binary Search Tree
Pembahasan indexing method dengan binary tree, serta
bagaimana menyusunnya (insert) dan memodifikasinya (delete), dan menganalisa
performancenya
Tree: AVL Tree
Pembahasan indexing method dengan binary tree yang
lebih lanjut (melalui mekanisma balancing), serta bagaimana menyusunnya
(insert) dan memodifikasinya (delete), dan menganalisa performancenya
Tree: 2-3 Tree
Pembahasan indexing method dengan struktur tree
lain
Tree: Red-Black Tree, (a,b)-Tree
Pembahasan indexing method dengan struktur tree
lain
Tree: Trie, Huffman-coding dengan Tree
Pembahasan aplikasi lain dari tree: trie merupakan
struktur untuk indexing dictionary, dan huffman-coding adalah pengkodean
yang memanfaatkan struktur data binary tree
Graf: Konsep Dasar Graf, Terminologi
Pembahasan definisi dan terminologi seperti adjacency,
connectivity, path, circular path, dsb.
Graf: Representasi Graf, Searching dengan DFS / BFS
Membahas bagaimana teknik merepresentasikan graf
serta algoritma-algoritma pencarian dalam struktur data graf
Graf: Algoritma Shortest Path dari Dijkstra dan Implementasi
Membahas algoritma untuk pencarian path terpendek
berdasarkan kriteria single-source
Graf: Algoritma Minimum Spanning Tree: Kruskal dan
Prim
Membahas dua algoritma pencarian minimum spanning
tree
Graf: Algoritma Topological Ordering, Maximum Flow
Membahas algoritma pada model masalah pengurutan
topologis dari graf
Hashing: Tabel Hash, Fungsi-fungsi
Hashing
-
Membahas definisi tabel hash, struktur data untuk tabel
hash, metodologi dan fungsi-fungsi untuk hashing
Hashing: Collision Handling
Melanjutkan kuliah sebelumnya dalam teknik-teknik
penanganan collision
Sorting: Internal Sorting
Membahas algoritma-algoritma sorting internal (dilakukan
di dalam memory) serta analisis dan perbandingan kompleksitas masing-masing
Sorting dengan Waktu Linear (O(n))
Membahas algoritma-algoritma sorting internal (dilakukan
di dalam memory) khusus yang memiliki kompleksitas waktu O(n)
Algoritma-algoritma Pengurutan Data External
Membahas algoritma-algoritma sorting external (dilakukan
di secondary storage)
Representasi dan Algoritma-algoritma untuk Matriks
Tentatif