Good program comes from appropriately using the "resources" on the computer. There are two types of
key resources: computational units (CPU, FPU, etc.) and storage units (memory, disk, etc., along with channels and networks).
Data Structures and Algorithms discuss how to use those two types of resources suitably and effectively. Traditionally,
data structures aim at the use of storage units, while algorithms aim at the use of computational units.
But the two aims are actually inseparable: succinct data structures require coupling with corresponding algorithms;
efficient algorithms require coupling with corresponding data structures. The course, designed
as a required course for NTU CSIE students in the freshman year, introduces
basic data structures and their corresponding algorithms. We will move
from the concrete side of implementing basic data structures
to the abstract side of analyzing the complexity of storage and computation.
- Instructor: Professors Michael Hsin-Mu Tsai and I (Hsuan-Tien Lin: htlin AT csie DOT ntu DOT edu DOT tw) will co-teach this class
- My office hour: after classes (first half), R103; or by appointment, R314
- TAs (full list on NTU COOL): dsa_ta AT csie DOT ntu DOT edu DOT tw
- Time: Tuesdays 13:20--16:10 (will take a total of 20-min break in between or afterwards)
- Room: R103, with broadcast rooms R102 and R104
- Course website: NTU COOL
- Textbook: Introduction to Algorithms, 3rd edition by Cormen et al., 2009
- NTU COOL should have been fully set up and hence we will move there for all official documents and announcements
- draft slides for first part of the class will be released here before the beginning of each class
- auditing students: please signup here for accessing NTU COOL
- screencast/slido links for first half are here
- other course information will be on NTU COOL
- homework 0 announced on 12/12/2021