NYSTCE Computer Science key terms
NYSTCE Computer Science · Get comfortable with the vocabulary.
- Algorithm
- Related: Pseudocode, Big-O Notation, Recursion
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.
- Pseudocode
- Related: Algorithm, Control Structure, Trace Table
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.
- Control Structure
- Related: Pseudocode, Loop Invariant, Recursion
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.
- Recursion
- Related: Base Case, Call Stack, Algorithm
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.
- Base Case
- Related: Recursion, Call Stack
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.
- Call Stack
- Related: Recursion, 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.
- Big-O Notation
- Related: Linear Search, Binary Search, Merge Sort
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).
- Linear Search
- Related: Binary Search, Big-O Notation
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.
- Binary Search
- Related: Linear Search, Big-O Notation, Merge Sort
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.
- Merge Sort
- Related: Big-O Notation, Recursion, Binary Search
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.
- Loop Invariant
- Related: Control Structure, Trace Table, Algorithm
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.
- Trace Table
- Related: Pseudocode, Loop Invariant, Debugging
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.
- Object-Oriented Programming
- Related: Encapsulation, Inheritance, Polymorphism
A paradigm organizing programs around objects that bundle state (fields) and behavior (methods), with classes as templates. Key ideas include encapsulation, inheritance, and polymorphism.
- Encapsulation
- Related: Object-Oriented Programming, Inheritance
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.
- Inheritance
- Related: Polymorphism, Encapsulation, Object-Oriented Programming
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.
- Polymorphism
- Related: Inheritance, Object-Oriented Programming
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.
- Parameter Passing
- Related: Call Stack, Variable Scope
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.
- Variable Scope
- Related: Parameter Passing, Call Stack
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.
- Boolean Logic
- Related: Control Structure, Truth Table
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.
- Truth Table
- Related: Boolean Logic
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.
- Two's Complement
- Related: Binary Representation, Overflow
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.
- Binary Representation
- Related: Two's Complement, Floating-Point Number
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.
- Floating-Point Number
- Related: Binary Representation, Overflow
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.
- Overflow
- Related: Two's Complement, Floating-Point Number
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.
- Data Structure
- Related: Stack, Queue, Hash Table
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.
- Stack
- Related: Queue, Call Stack, Data Structure
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.
- Queue
- Related: Stack, Data Structure
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.
- Hash Table
- Related: Data Structure, Big-O Notation
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.
- Binary Search Tree
- Related: Data Structure, Big-O Notation
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.
- Graph Traversal
- Related: Queue, Stack, Data Structure
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.
- Relational Database
- Related: SQL, Normalization
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.
- SQL
- Related: Relational Database, Normalization
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.
- Normalization
- Related: Relational Database, SQL
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.
- Operating System
- Related: Process, Virtual Memory, File 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.
- Process
- Related: Operating System, Virtual Memory
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.
- Virtual Memory
- Related: Operating System, Process
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.
- File System
- Related: Operating 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.
- Network Protocol
- Related: IP Address, Packet, Client-Server Model
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.
- IP Address
- Related: Network Protocol, Packet
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.
- Packet
- Related: Network Protocol, IP Address
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.
- Client-Server Model
- Related: Network Protocol
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.
- Encryption
- Related: Network Protocol, Authentication
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.
- Authentication
- Related: Encryption
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.
- Debugging
- Related: Trace Table, Test Case
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.
- Test Case
- Related: Debugging, Loop Invariant
A specific set of inputs, preconditions, and expected outputs used to determine whether software behaves correctly. Good suites include normal, boundary, and invalid inputs.
- Abstraction
- Related: Encapsulation, Object-Oriented Programming
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.