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 1Calculations and algorithms, examples of algorithms
Session 2Topics related to computational complexity evaluation and program design
Session 3Basic data structure (1): list, stack, queue
Session 4Basic data structures (2): graphs, trees and binary trees
Session 5Basic data structures (3): sets and dictionaries
Session 6Set of ordered sets (1): Priority queue, heap
Session 7Set of ordered sets (2): Binary search tree, balanced search tree
Session 8Alignment algorithm (1): Bubble sort, selection sort, insertion sort
Session 9Alignment algorithm (2): Heapsort
Session 10Alignment algorithm (3): Quicksort
Session 11Alignment algorithm (4): Merge sort, lower bound of the computational complexity of the alignment algorithm
Session 12Alignment algorithm (5): Bucket sort, radix sort
Session 13Algorithm design: dynamic programming
Session 14Final exam
**This content is based on April 1, 2024. For the latest syllabus information and details, please check the syllabus information inquiry page provided by the university.**