Algorithms Glossary
Browse 59 algorithms terms defined in plain English, from the cultural dictionary of computing.
59 Algorithms Terms
- Algorithm Bias
- Systematic unfairness or skew in algorithmic outcomes caused by data, objectives, assumptions, or deployment context. In tech culture the term often appears in...
- Backtracking
- Backtracking is an algorithmic technique that incrementally builds candidates for a solution and abandons a candidate (backtracks) as soon as it determines...
- Balanced Tree
- A tree data structure kept in a form where depth stays bounded relative to the number of elements, preventing operations from degrading into long linear walks....
- Big-O
- Big-O notation is a mathematical notation that describes the upper bound of an algorithm's time or space complexity as the input size grows, abstracting away...
- Big-O Notation
- A mathematical notation describing the upper bound of an algorithm's time or space complexity as input size grows. O(1) is constant, O(log n) is logarithmic,...
- Big O Notation Culture
- The tendency in developer culture to foreground algorithmic complexity and asymptotic analysis, sometimes appropriately and sometimes far beyond what practical...
- Binary Search Tree
- A tree structure in which each node's left subtree contains smaller keys and the right subtree contains larger keys, enabling ordered search operations. Binary...
- Binary Tree
- A hierarchical data structure in which each node has at most two children (left and right), forming the basis for efficient search (BST), priority queues...
- Bit Manipulation
- The use of bitwise operations such as shifts, masks, and logical operators to inspect, set, clear, or combine bits inside numeric values. Bit manipulation is...
- BST
- Short for binary search tree, a tree structure where values are arranged so that smaller keys are found on one side and larger keys on the other. BSTs support...
- Bubble Sort Life
- A joking phrase for solving life or work in a painfully inefficient, repetitive, step-by-step way. In developer humor, it borrows from bubble sort's reputation...
- Bucket Sort
- A sorting algorithm that distributes values into a set of buckets based on their range or key and then sorts or concatenates those buckets to produce the final...
- Compare
- To evaluate two values, objects, versions, or structures against each other in order to determine equality, ordering, or difference. Compare operations are...
- Competitive Programming
- A contest-based style of programming centered on solving algorithmic problems quickly and correctly under time constraints. It has its own training culture,...
- Connected Component
- In graph theory, a subset of nodes where each node is reachable from every other node in the same subset. Connected components are useful in clustering,...
- Constraint Programming
- A programming approach in which problems are modeled as variables subject to constraints, and a solver searches for values that satisfy those constraints....
- Cryptographic Algorithm
- A formal algorithm used for encryption, hashing, digital signatures, key agreement, or related cryptographic purposes. Security depends not only on choosing a...
- Dynamic Programming
- An algorithm design technique that solves complex problems by breaking them into overlapping subproblems, solving each subproblem once, and storing the results...
- echo chamber
- An information environment in which a person encounters only beliefs and opinions that reinforce their own, creating a feedback loop that amplifies existing...
- Elliptic Curve Cryptography
- Elliptic Curve Cryptography is public-key cryptography based on elliptic-curve groups that offers strong security with relatively small keys. Security teams...
- filter bubble
- A state of intellectual isolation resulting from algorithms that selectively curate the information a user sees based on their past behavior, location, and...
- Graph
- A data structure consisting of nodes (vertices) connected by edges, used to model relationships and networks. Graphs can be directed or undirected, weighted or...
- Graph Theory
- The mathematical study of graphs — structures consisting of vertices (nodes) connected by edges. Undirected or directed, weighted or unweighted, cyclic or...
- Greedy Algorithm
- An algorithm that builds a solution incrementally by always making the locally optimal choice at each step, hoping this leads to a globally optimal solution....
- Hashing Algorithm
- A Hashing Algorithm is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code...
- Hash Map
- A Hash Map is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Hash Ring
- A Hash Ring is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Hash Set
- A Hash Set is a development concept used to shape how software is built, executed, or maintained in real systems. Developers rely on it to make code easier to...
- Hash Table
- A data structure that maps keys to values using a hash function to compute an index into an array of buckets. Provides average O(1) lookup, insertion, and...
- Heap
- Heap is a term with two distinct meanings in computer science. As a data structure, a heap is a specialized tree-based structure that satisfies the heap...
- Iteration
- The repeated execution of a block of logic, usually to process items in a sequence or to converge toward a result. In programming it contrasts with recursion...
- Key Derivation
- Key Derivation is the process of deriving one or more cryptographic keys from a secret and contextual input. Security teams use it to enforce trust, reduce...
- Key Size
- The nominal size of a cryptographic key in bits, often used as a quick measure of brute-force resistance for a given algorithm. Key size is closely related to...
- K-Means
- A clustering algorithm that partitions data into k groups by repeatedly updating centroids. It influences how models are trained, evaluated, or served, and it...
- Knuth
- Donald Knuth, the computer scientist and Stanford professor emeritus who authored The Art of Computer Programming, created the TeX typesetting system, and is...
- LeetCode
- LeetCode is an online platform that hosts a collection of coding challenges designed to help software engineers practice algorithmic problem-solving and...
- Leetcode Grind
- The repetitive practice of solving algorithm problems, often on LeetCode, specifically to prepare for technical interviews. The phrase usually implies...
- LIFO
- Last In, First Out — an ordering principle where the most recently added element is the first to be removed. LIFO is the fundamental behavior of a stack data...
- Linked List
- A linear data structure where each element (node) contains a value and a pointer to the next node, allowing O(1) insertion and deletion at known positions but...
- Merge Sort
- A stable, comparison-based sorting algorithm that recursively divides the input in half, sorts each half, and merges the sorted halves back together. It...
- Optimization
- The process of modifying code, queries, algorithms, or system configuration to improve a measurable performance metric — such as execution time, memory usage,...
- Pathfinding
- The computational problem of finding the shortest or most optimal route between two points in a graph or grid, commonly solved with algorithms like A*,...
- Priority Queue
- An abstract data structure where each element has an associated priority and the element with the highest (or lowest) priority is always dequeued first,...
- Pseudo Code
- An informal, language-agnostic notation for describing an algorithm's logic using plain language mixed with programming constructs like loops, conditionals,...
- Quick Sort
- A divide-and-conquer sorting algorithm that selects a pivot element, partitions the array into elements less than and greater than the pivot, then recursively...
- Radix Sort
- A non-comparison sorting algorithm that distributes elements into buckets based on individual digits or characters, processing from least-significant to...
- Reduction
- The process of combining a collection of values into a single result by repeatedly applying a function. Also called fold or aggregate. Array.reduce() in...
- Round Robin
- A scheduling or load-distribution algorithm that cycles through a list of targets in sequential order, giving each one an equal turn. Used in DNS resolution,...
- RSA
- A public key cryptosystem used for encryption, signatures, and secure key exchange. It shows up in application security, identity, infrastructure, or incident...
- Scan
- An operation that reads through data sequentially. In databases, a full table scan examines every row (the fallback when no index applies); an index scan...
- Search Algorithm
- A procedure for locating a specific item or set of items within a data structure, ranging from simple linear scan (O(n)) and binary search (O(log n)) to...
- Search Tree
- A tree data structure in which nodes are organized so that a comparison at each node directs the search toward a subtree, enabling O(log n) lookup in balanced...
- Segment Tree
- A balanced binary tree where each node stores an aggregate (sum, min, max, GCD, etc.) over a contiguous range of an array, supporting both range queries and...
- Skiplist
- A probabilistic data structure that maintains multiple layers of sorted linked lists, where each higher layer acts as an express lane by skipping over...
- Stream Cipher
- A symmetric cipher that encrypts data one bit or byte at a time using a keystream. It shows up in application security, identity, infrastructure, or incident...
- The Art of Computer Programming
- Donald Knuth’s monumental multi-volume work on algorithms, combinatorics, and programming theory, widely regarded as one of the most influential technical...
- Time Complexity
- A measure of how an algorithm's running time grows as the input size increases, expressed in Big-O notation — for example, O(n) means linear growth, O(n²)...
- Tree
- A hierarchical data structure composed of nodes connected by edges, where each node has zero or more children and exactly one parent (except the root, which...
- Union Find
- A data structure (also called Disjoint Set Union) that tracks a collection of non-overlapping sets, supporting two near-constant-time operations: `find`...
Related Topics
- Data Structures (18 terms in common)
- Cryptography (6 terms in common)
- Performance (4 terms in common)
- Sorting (4 terms in common)
- Trees (4 terms in common)
- Systems (4 terms in common)
- Data Structure (4 terms in common)
- Optimization (3 terms in common)
- Scheduling (2 terms in common)
- Hiring (2 terms in common)
- Complexity (2 terms in common)
- Interview Prep (2 terms in common)
- Graphs (2 terms in common)
- Media (2 terms in common)
- Memory (2 terms in common)
- Divide And Conquer (2 terms in common)
- Computer Science (2 terms in common)
- Foundational (2 terms in common)
- Public Key (2 terms in common)
- Communication (1 terms in common)