SAT / PSAT
SAT / PSAT Prep
History & Social Science
AP World History AP US History AP European History AP Human Geography AP US Government & Politics AP Psychology AP Macroeconomics AP Microeconomics
English
AP English Language & Composition AP English Literature & Composition
Math & Computer Science
AP Calculus AB/BC AP Precalculus AP Statistics AP Computer Science A AP Computer Science Principles
Sciences
AP Biology AP Chemistry AP Environmental Science AP Physics 1 AP Physics 2
World Languages & Arts
AP Spanish Language AP Art History AP Music Theory Start studying →
Unit 3 · Big Idea 3 · 30–35% of Exam

Algorithms & Programming

The heart of the course and the largest big idea. Learn to build programs from variables, expressions, conditionals, iteration, lists, and procedures — and to reason about algorithms, searching, simulation, efficiency, and the limits of what computers can solve.

18 topics
Big Idea 3
30–35% of the exam
College Board aligned
← Back to AP Computer Science Principles

Choose your study tool

Six ways to master Unit 3 — pick whichever fits how you like to study.

Flashcards
24 interactive flashcards covering variables, conditionals, loops, lists, procedures, searching, and efficiency. Tap to flip.
Open flashcards →
Cheat Sheet
A one-page visual summary of Unit 3 — every construct, operator, and exam trap on a single screen.
Open cheat sheet →
Essentials
The core concepts plus a searchable glossary of every vocabulary term you need to know for the exam.
Open essentials →
Visual Review
A slide-by-slide walkthrough of Unit 3 with conditionals, loops, lists, procedures, and binary search.
Open visual review →
MCQ Practice
35 multiple-choice questions in College Board exam style — with full explanations of every answer.
Start practice →
FRQ Practice
A Create-Performance-Task-style written response with model answers showing what earns each point.
Start FRQ →

Topics in Unit 3

All 18 topics from the College Board CED, in order.

Topic 3.1
Variables & Assignments
Storing values in named variables and updating them with assignment.
Topic 3.2
Data Abstraction
Using variables and lists to manage complexity by hiding detail.
Topic 3.3
Mathematical Expressions
Arithmetic operators, the MOD (remainder) operator, and order of operations.
Topic 3.4
Strings
Sequences of characters and operations like length, concatenation, and substring.
Topic 3.5
Boolean Expressions
Expressions that evaluate to true or false using relational and logical operators.
Topic 3.6
Conditionals
Using if statements to select which code runs based on a condition.
Topic 3.7
Nested Conditionals
Placing conditionals inside conditionals to handle multiple cases.
Topic 3.8
Iteration
Repeating a block of code with count-controlled and condition-controlled loops.
Topic 3.9
Developing Algorithms
Combining sequencing, selection, and iteration to design step-by-step solutions.
Topic 3.10
Lists
Ordered collections of elements accessed by index, and list operations.
Topic 3.11
Binary Search
Efficiently searching a sorted list by repeatedly halving the search area.
Topic 3.12
Calling Procedures
Using procedures with parameters and return values.
Topic 3.13
Developing Procedures
Writing procedures to reuse code and manage complexity through abstraction.
Topic 3.14
Libraries
Collections of reusable procedures, accessed through an API.
Topic 3.15
Random Values
Generating random numbers to add variability to programs.
Topic 3.16
Simulations
Modeling real-world phenomena with programs, and their benefits and limits.
Topic 3.17
Algorithmic Efficiency
Comparing how the run time of algorithms grows — linear vs. binary search.
Topic 3.18
Undecidable Problems
Problems for which no algorithm can always give a correct yes/no answer.

About Unit 3

Unit 3 covers Big Idea 3: Algorithms & Programming — the biggest big idea and the core of building programs. It starts with the building blocks: variables and assignment, mathematical expressions (including the MOD operator), strings, and Boolean expressions that combine relational and logical operators. These combine into the three foundations of every algorithm: sequencing, selection (conditionals and nested conditionals), and iteration (loops).

From there you develop full algorithms and work with lists — ordered collections you can index, traverse, and search with linear search or the much faster binary search (on sorted data). Procedures (with parameters and return values) and libraries let you reuse code and manage complexity through abstraction. The unit closes with random values and simulations, comparing algorithmic efficiency (how run time grows), and the striking idea of undecidable problems — questions no algorithm can always answer correctly.

This is Big Idea 3, worth 30–35% of the multiple-choice exam — the most of any big idea. The six computational thinking practices below spiral through this and every big idea:

Practice 1
Computational Solution Design
Practice 2
Algorithms & Program Development
Practice 3
Abstraction in Program Development
Practice 4
Code Analysis
Practice 5
Computing Innovations
Practice 6
Responsible Computing
Up next
Unit 4: Computer Systems & Networks (Big Idea 4)
Start Unit 4 →