Computer Science Level 3 study materials
Computer Science Level 3 study resources

Computer Science Level 3 key terms

Computer Science Level 3 · Get comfortable with the vocabulary.

Algorithm

A finite, ordered set of unambiguous steps that transforms inputs into a desired output and terminates after a limited number of operations.

Related: Pseudocode, Computational Complexity
Pseudocode

A structured, human-readable description of an algorithm using programming-like constructs but no strict syntax, so the logic can be reviewed before coding.

Related: Algorithm, Trace Table
Decomposition

Breaking a large problem into smaller subproblems that can be solved and tested independently, then combined into a complete solution.

Related: Abstraction, Algorithm
Abstraction

Removing detail that is irrelevant to the current purpose so a model or interface exposes only the features needed to solve the problem.

Related: Decomposition, Encapsulation
Computational Complexity

A measure of how an algorithm's running time or memory use grows with input size, usually expressed with big-O notation such as O(n log n).

Related: Algorithm, Recursion
Recursion

A technique in which a function calls itself on smaller inputs, requiring a base case to stop and a recursive case to make progress.

Related: Computational Complexity, Call Stack
Trace Table

A manual record of variable values after each step of an algorithm, used to verify logic, find errors, and demonstrate dry running.

Related: Pseudocode, Debugging
Boolean Logic

A system of truth values combined with operators such as AND, OR, and NOT, used to build conditions and control program decisions.

Related: Algorithm, Trace Table
Variable

A named storage location whose value can change while a program runs; its name, type, and scope determine how it is used.

Related: Data Type, Scope
Data Type

A classification such as integer, string, or Boolean that defines which values a variable may hold and which operations apply to them.

Related: Variable, Type Checking
Scope

The region of a program in which a declared name is visible and usable, typically local to a block or function versus global to a module.

Related: Variable, Function
Function

A named, reusable block of code that takes parameters, performs a task, and optionally returns a value to the caller.

Related: Parameter, Scope
Parameter

A named input declared by a function; an argument is the actual value supplied when the function is called.

Related: Function, Return Value
Return Value

The result a function sends back to the code that called it, ending execution of that function unless it is void.

Related: Function, Parameter
Iteration

Repetition of a block of statements controlled by a loop condition, such as a for loop with a counter or a while loop.

Related: Variable, Algorithm
Debugging

The systematic process of locating, reproducing, and correcting defects in a program using breakpoints, logging, and test cases.

Related: Trace Table, Unit Test
Unit Test

An automated check that exercises one small piece of code in isolation and asserts that its actual output matches the expected output.

Related: Debugging, Test Case
Type Checking

Verification that operations receive values of compatible types, performed at compile time in static languages or at run time in dynamic ones.

Related: Data Type, Compiler
Array

A fixed-size, indexed collection of elements of the same type stored contiguously, allowing constant-time access by position.

Related: Index, Linked List
Index

A numeric position identifying an element in an ordered structure; in most languages the first element has index zero.

Related: Array, Off-by-One Error
Linked List

A linear structure of nodes, each holding data and a reference to the next node, giving cheap insertion but sequential access only.

Related: Array, Pointer
Stack

A last-in, first-out collection supporting push and pop at one end, used for function calls, undo history, and expression evaluation.

Related: Queue, Call Stack
Queue

A first-in, first-out collection where items are added at the rear and removed from the front, used for scheduling and buffering.

Related: Stack, Algorithm
Hash Table

A structure mapping keys to values through a hash function, giving average constant-time lookup, with collisions resolved by chaining or probing.

Related: Array, Algorithm
Binary Search Tree

A tree where each node's left subtree holds smaller keys and its right subtree larger keys, enabling ordered search in logarithmic time when balanced.

Related: Tree Traversal, Recursion
Tree Traversal

A defined order for visiting every node of a tree, such as pre-order, in-order, post-order depth-first, or level-order breadth-first.

Related: Binary Search Tree, Queue
Database Normalization

Organizing tables to reduce redundancy and update anomalies by separating data according to functional dependencies, typically through third normal form.

Related: Primary Key, Foreign Key
Primary Key

A column or combination of columns whose values uniquely identify each row in a table and cannot be null.

Related: Foreign Key, Database Normalization
Foreign Key

A column referencing a primary key in another table, enforcing referential integrity between related records.

Related: Primary Key, Database Normalization
Compiler

A program that translates an entire source file into machine code or intermediate code before execution, reporting syntax errors ahead of time.

Related: Interpreter, Type Checking
Interpreter

A program that reads and executes source code statement by statement, allowing rapid testing but typically slower execution than compiled code.

Related: Compiler, Machine Code
Machine Code

The binary instruction set a processor executes directly, produced by assembly or compilation and specific to a CPU architecture.

Related: Compiler, Operating System
Operating System

Software that manages hardware, memory, files, and processes, and provides services and scheduling so applications can run safely.

Related: Machine Code, Virtual Memory
Virtual Memory

An abstraction giving each process its own address space, with pages mapped to physical memory or disk so programs exceed available RAM.

Related: Operating System, Cache Memory
Cache Memory

Small, fast storage between the CPU and main memory that holds recently used data to reduce average access time.

Related: Virtual Memory, Operating System
Call Stack

A run-time structure of frames recording active function calls, their local variables, and return addresses; recursion depth is limited by its size.

Related: Stack, Recursion
Protocol

An agreed set of rules governing message format, ordering, and responses so different systems can communicate reliably.

Related: IP Address, Encryption
IP Address

A numeric label identifying a device on a network, used by routers to forward packets between subnets and across the internet.

Related: Protocol, Packet Switching
Packet Switching

Dividing data into packets that travel independently and are reassembled at the destination, sharing network links efficiently.

Related: IP Address, Protocol
Encryption

Transforming readable data into ciphertext with a key so that only authorized parties can recover the original content.

Related: Authentication, Protocol
Authentication

Verifying that a user or system is who it claims to be, using passwords, tokens, certificates, or biometric factors.

Related: Encryption, Access Control
Access Control

Rules deciding which authenticated users may read or change which resources, often expressed as roles and permissions.

Related: Authentication, Encryption
Phishing

A social-engineering attack using deceptive messages that impersonate trusted parties to steal credentials or install malware.

Related: Malware, Authentication
Malware

Software written to harm or exploit systems, including viruses, worms, ransomware, and spyware, often spread through downloads or attachments.

Related: Phishing, Encryption
Data Cleaning

Detecting and correcting incomplete, duplicated, or malformed records before analysis so results are accurate and reproducible.

Related: Outlier, Data Visualization
Outlier

A data point lying far from the rest of the distribution, which may indicate measurement error or a genuine rare event.

Related: Data Cleaning, Correlation
Correlation

A numerical measure of how strongly two variables move together; it does not by itself establish that one causes the other.

Related: Outlier, Data Visualization
Data Visualization

Representing data graphically with charts or plots so patterns, trends, and comparisons become easier to perceive and communicate.

Related: Data Cleaning, Correlation
Simulation

Running a model of a system many times with varied inputs to estimate outcomes that are costly or impossible to test directly.

Related: Algorithm, Abstraction
Intellectual Property

Legal rights over creations such as code, text, and images, covering copyright, patents, and trademarks, and governing reuse.

Related: Open Source License, Plagiarism
Open Source License

A license granting permission to use, modify, and redistribute software under stated conditions, such as attribution or share-alike requirements.

Related: Intellectual Property, Version Control
Plagiarism

Presenting another person's words, code, or ideas as one's own without proper attribution, a breach of academic and professional integrity.

Related: Intellectual Property, Open Source License
Version Control

A system recording changes to files over time, enabling history review, branching, and safe collaboration among developers.

Related: Open Source License, Unit Test
Digital Divide

Unequal access to devices, connectivity, and digital skills across groups, which affects opportunities in education and employment.

Related: Access Control, Intellectual Property
Algorithmic Bias

Systematic unfairness in automated decisions arising from biased training data or flawed design, producing unequal outcomes for groups.

Related: Algorithm, Data Cleaning