Computer Science Cheat Sheet
The core ideas of Computer Science distilled into a single, scannable reference — perfect for review or quick lookup.
Quick Reference
Algorithms
An algorithm is a finite, well-defined sequence of instructions for solving a problem or performing a computation. Algorithms are the heart of computer science and can be analyzed for their correctness, efficiency, and resource usage. Common categories include sorting algorithms, search algorithms, graph algorithms, and dynamic programming approaches.
Data Structures
A data structure is a specialized format for organizing, storing, and accessing data efficiently. Choosing the right data structure is critical because it directly affects the performance of algorithms that operate on the data. Common data structures include arrays, linked lists, stacks, queues, hash tables, trees, and graphs.
Big O Notation
Big O notation is a mathematical notation used to describe the upper bound of an algorithm's time or space complexity as the input size grows. It abstracts away constant factors and lower-order terms to focus on the dominant growth rate, allowing developers to compare algorithms and predict scalability.
Object-Oriented Programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of objects, which bundle data (attributes) and behavior (methods) together. OOP relies on four key principles: encapsulation, abstraction, inheritance, and polymorphism. These principles promote modular, reusable, and maintainable code.
Recursion
Recursion is a technique where a function calls itself to solve smaller instances of the same problem until it reaches a base case. It is a natural fit for problems that have a self-similar structure, such as tree traversal, factorial computation, and divide-and-conquer algorithms. Every recursive solution must have at least one base case to prevent infinite recursion.
Databases
A database is an organized collection of structured data managed by a database management system (DBMS). Relational databases use tables with rows and columns and are queried using SQL, while NoSQL databases use flexible schemas such as documents, key-value pairs, or graphs. Databases ensure data integrity, support concurrent access, and enable efficient querying of large datasets.
Operating Systems
An operating system (OS) is software that manages computer hardware and provides services for application programs. It handles process scheduling, memory management, file systems, device drivers, and security. The OS acts as an intermediary between users and hardware, enabling multiple programs to run concurrently and share resources safely.
Computer Networking
Computer networking is the practice of connecting computers and devices to share resources and communicate. Networks operate using layered protocol models such as TCP/IP, where each layer handles a specific responsibility from physical transmission to application-level communication. Key concepts include IP addressing, routing, DNS, HTTP, and encryption.
Machine Learning Basics
Machine learning is a subfield of artificial intelligence where systems learn patterns from data rather than being explicitly programmed. Supervised learning uses labeled training data to make predictions, unsupervised learning finds hidden structure in unlabeled data, and reinforcement learning trains agents through trial-and-error with rewards. Models are evaluated on their ability to generalize to unseen data.
Software Engineering
Software engineering is the systematic application of engineering principles to the design, development, testing, deployment, and maintenance of software. It encompasses methodologies like Agile and Waterfall, practices such as version control, code review, and continuous integration, and architectural patterns that help teams build reliable, scalable systems. The goal is to produce high-quality software efficiently and predictably.
Key Terms at a Glance
Get study tips in your inbox
We'll send you evidence-based study strategies and new cheat sheets as they're published.
We'll notify you about updates. No spam, unsubscribe anytime.