Academic Catalog 2019-20

ACS 3110 Advanced Trees & Sorting Algorithms (CS 2.1)

In this course students will implement and test advanced data structures and algorithms, benchmark performance, analyze algorithmic complexity, explore trade offs in performance and memory usage, and draw out elegant problem-solving techniques. Key concepts include sorting algorithms, divide-and-conquer recursion, heaps, tries, self-balancing trees, and execution trees. Students will build an original project that applies these data structures to real-world problems such as autocomplete, family trees, and board games. Students will also write technical blog articles about these topics deepen understanding and gain valuable online presence as knowledgeable and proficient software engineers. Prerequisites: ACS 2130


3.00 units