Lecture Topic
Lec 1 Course introduction, preliminary review (math, programming language)
Lec 2 Algorithm analysis (Searching on ordered array and binary search)
Lec 3 Linked List (Linked list operators and applications)
Lec 4 Stack (Stack implementation, operations, and applications)
Lec 5 Queue (Queue implementation, operations, and applications)
Lec 6 String and KMP (string introduction and KMP algorithm)
Lec 7 Tree (tree definition, properties)
Lec 8 Priority Queue / Heap (binary tree and complete binary tree)
Lec 9 Binary Search Tree / AVL-tree (insertion/deletion operators)
Lec 10 Graph (graph definition, properties)
Lec 11 Breadth First Search and Depth Frist Search (SSSP, Topological Sort, DAG)
Lec 12 Shortest Path (Dijkstra Algorithm)
Lec 13 Minimum Spanning Tree (Prim’s Algorithm)
Lec 14 Strongly Connected Components
Lec 15 Sorting Algorithm (Selection, Insertion, Bubble, Merge, Heap, Quick sort)
Lec 16 Course Review
Lab Topic
Lec 1 Introduce how to design algorithm and how to use online judge system.
Lec 2 Recursion and Deep first search Exercise.
Lec 3 Binary Search (Basic exercise and futher exercise)
Lec 4 Linked List exercise (How to design a Linked List, and when need to using Linked List)
Lec 5 Stack (How to design a stack, and what problem can be solved by using stack)
Lec 6 Queue (How to design a queue, and what problem can be solved by using queue)
Lec 7 String and KMP (Basic exercise of String, next array of KMP and how to use KMP)
Lec 8 Binary Tree (How to design a binary structure, and different kinds of traversal of binary tree )
Lec 9 Priority Queue / Heap (Floating and sinking and how to use heap)
Lec 10 Binary Search Tree / AVL-tree (insertion / deletion operators)
Lec 11 Tree and Graph (Defination of tree and graph)
Lec 12 Breadth First Search and Depth Frist Search (SSSP, Topological Sort, DAG)
Lec 13 Shortest Path (Dijkstra Algorithm, finding shortest path of two node)
Lec 14 Minimum Spanning Tree (Prim’s Algorithm, finding shortest path of all nodes)
Lec 15 Strongly Connected Components
Lec 16 Sorting Algorithm (Selection, Insertion, Bubble, Merge, Heap, Quick sort)