Big ONotation
Big O notation is a mathematical notation used in computer science to describe how an algorithm's running time or memory usage grows as the size of its input increases, focusing on worst-case or upper-bound growth rate rather than exact timing.
15 resources across 3 libraries
Glossary Terms(11)
Recursion
Recursion is a programming technique in which a function solves a problem by calling itself on smaller subproblems, combined with a base case that stops the re…
Big O Notation
Big O notation is a mathematical notation used in computer science to describe how an algorithm's running time or memory usage grows as the size of its input i…
Linked List
A linked list is a linear data structure made up of nodes, where each node stores a value and a reference (pointer) to the next node in the sequence, allowing…
Binary Search Tree
A binary search tree (BST) is a node-based data structure in which each node has at most two children, and every node's left subtree contains only values less…
Hash Table
A hash table (or hash map) is a data structure that maps keys to values using a hash function to compute an index into an array of buckets, giving average O(1)…
Dynamic Programming
Dynamic programming (DP) is an algorithmic technique for solving problems by breaking them into overlapping subproblems, solving each subproblem once, and stor…
Sorting Algorithm
A sorting algorithm is a procedure that rearranges the elements of a list or array into a defined order, typically ascending or descending, and is one of the m…
Graph Algorithm
A graph algorithm is a procedure that operates on a graph — a set of nodes (vertices) connected by edges — to solve problems such as finding shortest paths, de…
Memoization
Memoization is an optimization technique that caches the results of expensive function calls so that when the same inputs occur again, the cached result is ret…
Regular Expression (Regex)
A regular expression (regex) is a sequence of characters that defines a search pattern, used to match, extract, validate, or replace text according to specific…
Parallelism
Parallelism is the simultaneous execution of multiple computations at the exact same instant, typically achieved by distributing work across multiple CPU cores…
Study Notes(1)
Interview Questions(3)
What is Big O Notation?
Big O notation describes how an algorithm’s running time or memory usage grows as the input size grows, focusing on the dominant term and ignoring constant fac…
What is the Difference Between Time and Space Complexity?
Time complexity measures how the number of operations an algorithm performs grows with input size, while space complexity measures how the memory it needs grow…
What is the Master Theorem?
The Master Theorem gives a direct formula for the time complexity of divide-and-conquer recurrences of the form T(n) = a·T(n/b) + f(n), by comparing f(n) again…