About the Course
We know that computers are great problem solvers, but there is human work that must be done before computers can work their magic: first, it is necessary to formalize the problem within a mathematical model, find an algorithm to solve the problem in that model, and implement the algorithm in a particular programming language. This course teaches you how to do behind-the-scenes work like designing, analyzing, and implementing algorithms within a programming language. You'll study data structures such as arrays, lists, stacks, queues, trees, and sets to learn different ways of organizing data. You'll analyze sorting, searching, and graphing algorithms to determine their runtime efficiency. By examining these fundamental algorithms, you and your classmates will learn how design decisions can affect their efficiency and scalability. A series of programming assignments will help you learn how to put these abstract ideas into practice. By the end of this course, you will have the conceptual tools necessary to model and analyze various types of computational problems.
Typical Class Size: 18-20
Learning Objectives
- Analyze the asymptotic performance of algorithms
- Construct detailed correct proofs for algorithms
- Elaborate on major algorithms and data structures
- Apply important algorithmic design standards and methods of analysis to programming
- Create efficient algorithms in common engineering design situations
About Advanced Enrichment courses
These courses offer above-grade-level material that is presented in a novel context, explored with other advanced learners, and guided by a CTY educator to help prepare students for higher-order thinking and college-style academic challenges.
Requirements
CTY courses have grade-level requirements and most require minimum test scores. Some courses may also have prerequisites.
Identification DetailsDates and Tuition
It looks like there are no upcoming sections right now. Stay tuned for new dates!
Registration Fee and Financial Aid
Tuition and fees will be waived or reduced for students who qualify for financial aid.
Learn more about Financial Aid