NYSTCE Computer Science study materials
NYSTCE Computer Science study resources

NYSTCE Computer Science key terms

NYSTCE Computer Science · Get comfortable with the vocabulary.

Algorithm

A finite, ordered set of unambiguous steps that transforms input into a defined output and terminates. Candidates compare algorithms by correctness, efficiency, and clarity rather than by programming language.

Related: Pseudocode, Big-O Notation, Recursion
Pseudocode

A language-neutral description of an algorithm that uses structured English and indentation to show sequence, selection, and iteration. It communicates logic to humans and is not executed by a computer.

Related: Algorithm, Control Structure, Trace Table
Control Structure

A construct that determines the order in which statements execute: sequence, selection (if/else, switch), and iteration (loops). Any algorithm can be expressed using only these three forms.

Related: Pseudocode, Loop Invariant, Recursion
Recursion

A technique in which a method calls itself on a smaller version of the same problem, requiring a base case to stop. Each pending call occupies a stack frame, so deep recursion can exhaust memory.

Related: Base Case, Call Stack, Algorithm
Base Case

The condition in a recursive method that returns a value without making another recursive call. Without a correct base case, recursion continues until a stack overflow occurs.

Related: Recursion, Call Stack
Call Stack

A last-in, first-out region of memory holding one frame per active method call, storing parameters, local variables, and the return address. It explains both recursion depth limits and stack traces.

Related: Recursion, Stack
Big-O Notation

A notation describing an upper bound on how an algorithm's running time or space grows as input size increases, ignoring constants. Common classes include O(1), O(log n), O(n), O(n log n), and O(n squared).

Related: Linear Search, Binary Search, Merge Sort
Linear Search

A search that examines elements one at a time from the start until the target is found or the list ends. It works on unsorted data and runs in O(n) time in the worst case.

Related: Binary Search, Big-O Notation
Binary Search

A search on a sorted array that repeatedly compares the target with the middle element and discards half the remaining range. It runs in O(log n) time but requires sorted, randomly accessible data.

Related: Linear Search, Big-O Notation, Merge Sort
Merge Sort

A divide-and-conquer sorting algorithm that splits a list in half, sorts each half recursively, then merges the sorted halves. It guarantees O(n log n) time but needs O(n) auxiliary space.

Related: Big-O Notation, Recursion, Binary Search
Loop Invariant

A statement that is true before and after every iteration of a loop, used to reason about correctness. Establishing initialization, maintenance, and termination proves what the loop accomplishes.

Related: Control Structure, Trace Table, Algorithm
Trace Table

A manual debugging tool that records variable values after each step or iteration of an algorithm. It helps candidates predict output and locate logic errors without running code.

Related: Pseudocode, Loop Invariant, Debugging
Object-Oriented Programming

A paradigm organizing programs around objects that bundle state (fields) and behavior (methods), with classes as templates. Key ideas include encapsulation, inheritance, and polymorphism.

Related: Encapsulation, Inheritance, Polymorphism
Encapsulation

Bundling data and the methods that operate on it inside a class while restricting direct outside access, typically through private fields and public accessors. It protects invariants and limits coupling between components.

Related: Object-Oriented Programming, Inheritance
Inheritance

A relationship in which a subclass reuses and extends the fields and methods of a superclass, expressing an is-a relationship. Overriding lets a subclass supply its own version of an inherited method.

Related: Polymorphism, Encapsulation, Object-Oriented Programming
Polymorphism

The ability of one method call to behave differently depending on the actual object type at run time, or of one name to accept different parameter types. It lets code depend on a supertype rather than concrete classes.

Related: Inheritance, Object-Oriented Programming
Parameter Passing

The mechanism by which arguments move into a method. Pass-by-value copies the argument; pass-by-reference shares the caller's variable. Java passes object references by value, so the object can be mutated but not reassigned.

Related: Call Stack, Variable Scope
Variable Scope

The region of a program in which a declared name is visible and usable, such as a block, method, or class. Shadowing occurs when an inner declaration hides an outer one with the same name.

Related: Parameter Passing, Call Stack
Boolean Logic

Algebra over the values true and false using AND, OR, and NOT. Truth tables and De Morgan's laws let candidates simplify conditions and reason about compound expressions in code.

Related: Control Structure, Truth Table
Truth Table

A table listing every combination of input truth values for a Boolean expression and the resulting output. It is used to verify equivalence of conditions and to derive simplified logic.

Related: Boolean Logic
Two's Complement

A binary encoding of signed integers in which the most significant bit carries negative weight. Negating a value means inverting all bits and adding one, which also explains fixed-width integer overflow.

Related: Binary Representation, Overflow
Binary Representation

Expressing values using only the digits 0 and 1, with each position standing for a power of two. The same positional idea extends to hexadecimal, which groups four bits per digit.

Related: Two's Complement, Floating-Point Number
Floating-Point Number

A real number stored as a sign, mantissa, and exponent, following a standard such as IEEE 754. Limited precision means many decimals cannot be stored exactly, so equality comparisons on them are unreliable.

Related: Binary Representation, Overflow
Overflow

The condition in which a computed value exceeds the range representable in its fixed-width type, causing wraparound or an error. Integer overflow and floating-point overflow have different observable effects.

Related: Two's Complement, Floating-Point Number
Data Structure

A way of organizing data in memory chosen to make particular operations efficient, such as arrays, lists, stacks, queues, trees, and hash tables. Choice of structure affects both time and space costs.

Related: Stack, Queue, Hash Table
Stack

A last-in, first-out collection where insertion and removal both occur at the top. It models undo histories, expression evaluation, and the method call mechanism.

Related: Queue, Call Stack, Data Structure
Queue

A first-in, first-out collection where elements are added at the rear and removed from the front. It models scheduling, buffering, and breadth-first traversal of graphs and trees.

Related: Stack, Data Structure
Hash Table

A structure that maps keys to values by converting each key into an array index with a hash function. Average lookup is O(1), but collisions must be resolved by chaining or open addressing.

Related: Data Structure, Big-O Notation
Binary Search Tree

A binary tree in which every left descendant is smaller and every right descendant is larger than a node. Search, insert, and delete average O(log n) but degrade to O(n) when unbalanced.

Related: Data Structure, Big-O Notation
Graph Traversal

Systematically visiting every vertex of a graph, typically by breadth-first search using a queue or depth-first search using a stack or recursion. A visited set prevents infinite loops in cyclic graphs.

Related: Queue, Stack, Data Structure
Relational Database

A collection of data organized into tables of rows and columns, linked by keys and queried with SQL. Primary keys uniquely identify rows; foreign keys enforce referential links between tables.

Related: SQL, Normalization
SQL

A declarative language for defining, querying, and modifying relational data. SELECT statements combine projection, filtering, joins, grouping, and ordering, while INSERT, UPDATE, and DELETE change stored rows.

Related: Relational Database, Normalization
Normalization

Structuring relational tables to reduce redundant data and update anomalies, typically by ensuring each fact is stored once. Higher normal forms progressively remove partial and transitive dependencies.

Related: Relational Database, SQL
Operating System

Software that manages hardware resources and provides services to applications, including process scheduling, memory allocation, file systems, and device input/output. It isolates programs and mediates privileged operations.

Related: Process, Virtual Memory, File System
Process

A running program instance with its own address space, program counter, and resources. The scheduler switches among processes, while threads within one process share its memory.

Related: Operating System, Virtual Memory
Virtual Memory

An abstraction giving each process a private address space mapped by hardware and the operating system onto physical memory and disk. Paging moves fixed-size blocks, and a page fault occurs when a needed page is absent.

Related: Operating System, Process
File System

The operating-system component that organizes persistent data into named files and directories, tracking metadata and allocating storage blocks. Permissions and paths govern how programs access stored data.

Related: Operating System
Network Protocol

An agreed set of rules governing how data is formatted, addressed, transmitted, and acknowledged between devices. Layered models such as TCP/IP separate link, internet, transport, and application responsibilities.

Related: IP Address, Packet, Client-Server Model
IP Address

A numeric identifier assigned to a device on a network so packets can be routed to it. IPv4 uses 32-bit addresses; IPv6 uses 128-bit addresses to relieve exhaustion.

Related: Network Protocol, Packet
Packet

A small unit of data carrying addressing and control information plus a payload, sent independently across a network. Packets may arrive out of order or be lost, so transport protocols add reliability.

Related: Network Protocol, IP Address
Client-Server Model

A network architecture in which clients request services and a server responds, centralizing shared data and control. It contrasts with peer-to-peer designs where nodes act as both requester and provider.

Related: Network Protocol
Encryption

Transforming readable data into ciphertext using a key so only authorized parties can recover it. Symmetric schemes share one key; asymmetric schemes use a public-private key pair and support digital signatures.

Related: Network Protocol, Authentication
Authentication

Verifying that a user or system is who it claims to be, using something known, possessed, or inherent. It differs from authorization, which decides what an authenticated identity may do.

Related: Encryption
Debugging

The process of locating and correcting defects in a program by reproducing symptoms, forming hypotheses, inspecting state, and testing fixes. Tools include breakpoints, step execution, and trace tables.

Related: Trace Table, Test Case
Test Case

A specific set of inputs, preconditions, and expected outputs used to determine whether software behaves correctly. Good suites include normal, boundary, and invalid inputs.

Related: Debugging, Loop Invariant
Abstraction

Hiding implementation detail behind a simpler interface so users can reason at a higher level. Procedures, classes, and protocols are all abstractions that reduce complexity.

Related: Encapsulation, Object-Oriented Programming