Data Structure & Algorithms
Course Purpose |
---|
The purpose of this course is to understand the basic algorithm and data structure to be able to make an effective program for data processing using a computer. |
Learning Goals |
The goals are to: 1) understand the basic algorithm and data structure for sorting and searching, and 2) be able to analyze the computational complexity of a given algorithm. |
Topic | |
---|---|
Session 1 | Calculations and algorithms, examples of algorithms |
Session 2 | Topics related to computational complexity evaluation and program design |
Session 3 | Basic data structure (1): list, stack, queue |
Session 4 | Basic data structures (2): graphs, trees and binary trees |
Session 5 | Basic data structures (3): sets and dictionaries |
Session 6 | Set of ordered sets (1): Priority queue, heap |
Session 7 | Set of ordered sets (2): Binary search tree, balanced search tree |
Session 8 | Alignment algorithm (1): Bubble sort, selection sort, insertion sort |
Session 9 | Alignment algorithm (2): Heapsort |
Session 10 | Alignment algorithm (3): Quicksort |
Session 11 | Alignment algorithm (4): Merge sort, lower bound of the computational complexity of the alignment algorithm |
Session 12 | Alignment algorithm (5): Bucket sort, radix sort |
Session 13 | Algorithm design: dynamic programming |
Session 14 | Final exam |