277H –Honors Data Structures and Algorithms Grades 12
This course is a continuation of the material covered in AP Computer Science A and is focused on the theoretical underpinnings of the programs we create in the C programming language. Students will learn how to analyze the time complexity of searching and sorting algorithms as well as learn how to use greedy and dynamic approaches to computational problems. In the second semester, students will learn common data structures such as linked lists, stacks, queues, trees, and graphs, and the tradeoffs between them. Special topics might include probabilistic algorithms, amortized analysis, and parallel processes.
Prerequisites: Successful completion of 285 AP Computer Science and teacher recommendation.