Computer Science: Algorithms

Course Description

Students will learn the basics needed to understand and implement algorithms, which is the fundamental thinking process and methodology for learning computer science. This is a fundamental requirement for the USA Computing Olympiad. It builds the foundation for studying and excel in the AP computer science courses. Standard measures of efficiency (for example time and space complexity) will be introduced, and popular algorithms for sorting and searching will be explored in greater detail. Algorithms will be presented in pseudo-code, and implementations in Python and other popular languages will be covered. More specialized algorithms, such as primality testing, string matching, shortest path, or RSA-encryption will be covered based on teacher specialization.

Course Meetings

This course meets Sundays 1:00-2:00 PM Pacific (4:00-5:00 PM Eastern) for live sessions. Recorded videos are posted before each live session. For the specific dates of the course please see the individual courses below or the full course schedule by clicking here.


Click on any of the courses below to register! You will be prompted to login or create a new account if you have not already done so.

The ten live class sessions will be on the following dates: 6/7, 6/14, 6/21, 6/28, 7/12, 7/19, 7/26, 8/2, 8/9, 8/16.