About the Course

Data Structures and Algorithms

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
 

Course Overview

This course is

ungraded.

Summer Dates & Locations

Registration deadline:

After May 2, 2025, registration is available upon request pending eligibility and seat availability. To request placement, email [email protected] after submitting a program application.

Session One

Image of Dickinson College
Carlisle, Pennsylvania
-
Residential cost: $7,259
Commuter cost: $6,459

Session Two

Image of Dickinson College
Carlisle, Pennsylvania
-
Residential cost: $7,259
Commuter cost: $6,459

Testing and Prerequisites

  Math Verbal
Required Level Advanced CTY-Level Not required
Check your eligibility using existing test scores If you do not have existing test scores:

Students must achieve qualifying scores on an advanced assessment to be eligible for CTY programs. If you don’t have qualifying scores, you have several different testing options. We’ll help you find the right option for your situation.

Sign up for Testing Learn More

Course Prerequisites

Data Structures and Algorithms requires:

1 prerequisite

CTY’s Fundamentals of Computer Science or at least a B+ in a high school or college-level computer programming course from an accredited provider

Cost and Financial Aid

  • Tuition
    • Varies
  • Application fee
    • Nonrefundable Application Fee - $55 (Waived for financial aid applicants)
    • Nonrefundable International Fee - $250 (outside US only)

We have concluded our financial aid application review process for 2025 On-Campus Programs. We encourage those who may need assistance in the future to apply for aid as early as possible. We are committed to serving all talented youth regardless of financial circumstances. Financial assistance is available based on need.

Learn More

Course Materials

Students should bring basic school supplies like pens, notebooks, and folders to their summer program. You will be notified of any additional items needed before the course begins. All other materials will be provided by CTY.
 

Sample Reading

These titles have been featured in past sessions of the course, and may be included this summer. CTY provides students with all texts; no purchase is required.

  • Data Structures and Algorithm Analysis, Mark Weiss

About Computer Science and Technology at CTY

Build robots, conquer the world!

Introduction to Robotics is perfect for students who want to learn introductory-level programming and apply what they've learned through real-life engineering projects. You can even test your coding and design skills by having your robot complete obstacle courses and other challenges.

You’ve learned to code—now what?

Data Structures and Algorithms is for students who have some proficiency at programming and are looking to take their abilities to the next level. By diving deep into how computers organize and store data, you will learn to design and utilize algorithms with peak efficiency.

Meet our instructors and staff