This class will cover the principles and practices of data-structure and algorithm. This class includes theory and programming sections. We will study different data-structure and their operations likes array, list, vector, trees, heap and graph. Besides, we will not only learn how to design how to solve a problem, but also how to make program run, measure their time-complexity and time comsuming.
Professor (Lecture): Hang Liu
TA (Programming): Zhanfu Yang
Lecture Times: Tue, Thu 11:00 AM - 12:15 PM
Lecture Location: Burchard 103
Date | Topic | Readings | |
---|---|---|---|
Lecture 1 | September 1 | Welcome, programming interface setup | |
Lecture 2 | September 6 | C++ basics |
|
Programming 1 | September 8 | Programming | |
Lecture 3 | September 13 | List, Recursion, Queue, Stack and Set |
|
Programming 2 | September 15 | Linklist Programming |
|
Lecture 4 | September 20 | Searching |
|
Programming 3 | September 22 | Search Programming |
|
Lecture 5 | September 27 | Efficiency and Time Complexity |
|
Programming 4 | September 29 | Time complexity programming | |
Lecture 6 | October 4 | Tree and binary tree |
|
Programming 5 | October 6 | Binary tree programming | |
Monday class schedule | October 11 | No class | |
Lecture 7 | October 13 | Binary Search Tree (BST) and Balanced BST | |
Programming 6 | October 18 | BST deletion and Midterm Review |
|
Midterm | October 20 |
|
|
Midterm Review | October 25 |
|
|
Programming 7 | October 27 |
|
|
Lecture 8 | November 1 | Priority Queue and Heap Tree |
|
Programming 8 | November 3 | Priority Queue and Heap Tree programming |
|
Lecture 9 | November 8 | Sorting Algorithm | |
Programming 9 | November 10 | Quadratic sort programming | |
Programming 10 | November 15 | Merge sort programming | |
Programming 11 | November 17 | Radix Sort programming | |
Lecture 10 | November 22 | Hash Table | |
Thanks Giving | November 24 | No Class | |
Programming 12 | November 29 | Programming | |
Lecture 11 | December 1 | Graph and Graph Traversal Algorithms | |
Programming 13 | December 6 | Programming | |
Programming 14 | December 8 | Programming | |
Final | December 15 |
|