MAC 2017 Data Structures and Algorithms Software Tools
This course offers a formal study of the basic structures used for storing data and an analysis of the algorithms, which act on data structures. The course builds on the material presented in Computer Programming I and II. This material is made more rigorous with an emphasis on the analysis and design of efficient algorithms. Topics covered include review of basic data structures, basic graph theory with algorithms for finding paths and spanning trees, techniques of design and analysis for (internal and external) sorting, merging and searching, algorithms for hashing, garbage collection and compaction.