- Home
- Practice
- CS Thinking
- Practice
CS Thinking Practice
4,118 problems across 79 concepts. Free to try; Family unlocks the full worked solutions.
Computational Thinking
Abstraction
76 QZooming out to see the big picture, hiding complexity you don't need right now.
Algorithm
50 QA recipe for solving problems—follow the steps, get the answer.
Algorithm Efficiency
76 QDoes doubling the data double the time? Or quadruple it? Or barely change it?
Array
50 QA numbered list. Item 0, item 1, item 2... Access any by its number.
Audio Representation
50 QDigital sound is a long list of measurements of a wave taken again and again over time.
Binary
50 QCounting with only two states: on/off, yes/no, 0/1. Each extra digit doubles the count.
Binary Search
50 QLooking up a word in a dictionary: open to the middle, then go left or right depending on where your word falls.
Bits and Bytes
50 QA bit is the smallest piece of data. A byte is enough to store one character.
Boolean Logic
50 QYes/no thinking. You combine simple true/false conditions into complex decisions with AND, OR, NOT.
Bubble Sort
50 QHeavier bubbles sink and lighter bubbles rise — larger values slowly move to the end of the list.
Data Compression
50 QCompression is packing information more tightly so files take less space or move faster across a network.
Data Representation
50 QTurning real-world things (text, images, sound) into numbers a computer can process.
Data Types
50 QDifferent kinds of data (numbers, text, true/false) work differently.
Debugging
50 QDetective work—observe the wrong output, form a hypothesis, test it, then fix what's wrong.
Decomposition
50 QEating an elephant: one bite at a time. Big problems become many small ones.
Divide and Conquer
50 QBreak a big hard task into smaller versions of the same task, solve each one, then stitch the answers together.
Error Types
50 QSome bugs stop the code from running, some crash it later, and some quietly give the wrong answer.
Event
50 QSomething happens (click, keypress, timer) and the program reacts.
Function (Programming)
50 QA mini-program with a name. Call it by name whenever you need that task done.
Generalization
80 QSolve one case carefully, notice what stays the same, then write one rule that fits many cases.
Image Representation
50 QA digital image is a giant colored spreadsheet: each square has a position and a color value.
Input/Output
50 QWhat goes in and what comes out. Keyboard → program → screen.
Iteration
50 QDo this again and again until some condition is met, then move on to the next step.
Linear Search
50 QLooking for your keys by checking every pocket and drawer in order.
Logical Operators
50 QAND is strict (both must be true), OR is flexible (either works), NOT flips the result.
Merge Sort
50 QSplit a messy deck of cards in half, sort each half, then interleave them back in order.
Modeling
80 QA model is a useful simplification. It is not reality itself, but a focused version of reality.
Modular Design
50 QLEGO blocks—each piece does one thing and connects to others in standard ways.
Parameters
50 QThe blanks you fill in when using a function. Like a form with fields.
Pattern Recognition
50 QSpotting what's the same across different examples so you can apply one solution to many.
Random Numbers
50 QThe computer follows a rule, but the outputs are mixed enough to behave like random choices for many tasks.
Recursion
50 QRussian dolls—open one, find a smaller one inside. Repeat until you reach the smallest.
Searching
50 QLooking for a book on a shelf, a name in a list, a file on your computer.
Selection
50 QIf this is true, do that path. If it is false, take a different path instead.
Sequence
76 QDo this, then that, then the next thing—order matters and each step must finish before the next.
Simulation
50 QA virtual experiment—test ideas without real-world consequences.
Sorting
50 QPutting things in order—alphabetical, numerical, by date—so they are easier to find and use.
Testing
50 QTry to break it before users do. Test normal cases, edge cases, and error cases.
Truth Tables
50 QMap out every possible True/False scenario to be sure you understand what a logical expression does.
Variable
50 QA labeled box you can put things in, take things out, or change what's inside.
Programming Fundamentals
Assignment
50 QAssignment is like putting a label on a box and putting something inside. The label is the variable name; the contents is the value.
Boolean
50 QA boolean is a yes/no answer. Is the user logged in? True or false. Is the number positive? True or false.
Event Handler
50 QAn event handler is like setting a trap — you define what should happen, then wait. When the event fires, your code runs automatically.
File Operations
50 QFile operations let your program save and load information — like writing notes in a notebook and reading them later.
For Loop
50 QA for loop is like 'do this for each...' — for each student in the class, print their name. For each number from 1 to 10, add it to the total.
Function
50 QLike a recipe: you name it, write it once, and call it whenever you need it.
Integer
50 QIntegers are counting numbers in code — things you can count without fractions: age, score, quantity, index.
Nested Conditionals
50 QNested conditionals are like a decision tree — first you ask one question, and depending on the answer, you ask a follow-up question.
Return Values
50 QA function is like a vending machine — you put in inputs (arguments) and get back an output (return value). The return value is what comes out.
Scope
50 QScope is like rooms in a house. A variable created inside a room (function) can only be seen from inside that room. A variable in the hallway (global) can be seen from everywhere.
String
50 QA string is text in code — anything between quotes. Numbers inside quotes are text too: '42' is a string, not a number.
While Loop
50 QA while loop is like 'keep going until...' — keep stirring the soup WHILE it's not boiling. Keep asking for a password WHILE the password is wrong.
Software Design Development
Code Maintenance
50 QSoftware is never 'done.' Like a garden, it needs constant tending — fixing bugs, updating dependencies, and adapting to changing needs.
Design Specification
50 QA spec is a blueprint for software — like an architect's plan before building a house. It answers 'what are we building and why?' before 'how?'
Documentation
50 QDocumentation is a letter to your future self (and teammates) explaining what the code does and why you made certain decisions.
Edge Cases
80 QIf normal inputs show whether the code works, edge cases show whether it is truly robust.
Flowchart
50 QA flowchart is a map of your algorithm — you can trace the path from start to finish and see every decision point along the way.
Interface
50 QAn interface is like a menu: it tells you what you can ask for without showing the kitchen.
Pseudocode
50 QPseudocode is a rough draft for code — write the logic in plain English first, then translate to real code.
Software Development Life Cycle
50 QBuilding software is like building a house — you plan, design, build, inspect, and maintain. Skipping steps leads to problems.
Unit Testing
50 QInstead of testing the whole machine at once, test each small part separately so failures are easier to find.
User Interface
50 QThe UI is everything the user sees and touches. A good UI makes the software feel easy and intuitive; a bad UI makes even simple tasks frustrating.
Version Control
50 QVersion control is an unlimited undo button for your entire project — plus the ability for multiple people to work on the same files simultaneously.
Systems Networks Impact
Accessibility
50 QAccessibility means designing technology so everyone can use it — not just people with perfect vision, hearing, and motor control.
Artificial Intelligence
50 QAI systems learn patterns from examples so they can make useful predictions or decisions on new inputs.
Computing System
50 QA computing system is the whole package — the machine, its programs, and the information flowing through it, all working together.
Cybersecurity
50 QCybersecurity is like locking your doors and windows — but for your digital life. It's about keeping the bad guys out of your systems and data.
Encryption
50 QEncryption is like locking a message in a box. Anyone can see the box, but only someone with the key can open it.
Ethics of Computing
50 QJust because we can build something doesn't mean we should. Ethics asks: Is this fair? Who benefits? Who might be harmed?
Hardware & Software
50 QHardware is the body, software is the mind. One is physical stuff you can touch; the other is instructions that make it useful.
Intellectual Property
50 QJust as you own physical property, creators own their ideas and creative works. Copying without permission is like taking someone's belongings.
Internet
50 QThe internet is the world's biggest network — it connects smaller networks together so any device can talk to any other device, anywhere.
Network
50 QA network is like a postal system for computers — it connects them so they can send and receive information.
Operating System
50 QThe OS is the manager of your computer — it decides which program gets the processor's attention, handles file storage, and provides the interface you see.
Packet
50 QSending data over a network is like sending a book by mail — you break it into chapters (packets), label each one with the destination, and reassemble at the other end.
Parallel Computing
50 QInstead of one person doing every part of a job in order, several people work on different pieces at the same time.
Privacy
50 QPrivacy is about deciding who gets to know what about you. In the digital world, your data is collected constantly — privacy is about having a say in that.
Protocol
50 QProtocols are like the rules of a language — both sides must agree on how to communicate, or the message is meaningless.
Storage
50 QMemory is the desk you are working on right now. Storage is the filing cabinet that keeps your work after you leave.
Every problem ships with a self-check answer. The full worked solution, plus our 5-part recognition coaching (Setup ▸ Key insight ▸ Why it works ▸ Common pitfall ▸ Connection), is part of Family. See pricing →