Algorithms terms
The step-by-step logic that powers efficient computation
Algorithms are the precise recipes that transform inputs into outputs efficiently. This category covers sorting, searching, graph traversal, dynamic programming, greedy approaches, divide-and-conquer, and complexity analysis. Understanding algorithmic thinking helps you recognise patterns in problems and reach for the right solution rather than reinventing a worse one.
A greedy graph algorithm that finds the shortest path from a source node to all other nodes in a weighted graph with non-negative edge weights.
1mo ago
algorithms advanced
A* Pathfinding Algorithm
Heuristic search algorithm that finds the lowest-cost path using f(n)=g(n)+h(n), widely used in maps and game AI.
2mo ago
algorithms advanced
Amortized Analysis
Averaging the cost of an operation over a sequence — explaining why dynamic array append is O(1) amortised despite occasional O(n) resizes.
2mo ago
algorithms advanced
P vs NP & NP-Completeness
P problems are solvable in polynomial time; NP problems have solutions verifiable in polynomial time. NP-complete problems are the hardest in NP — no polynomial-time algorithm is known.
2mo ago
algorithms advanced
Backtracking
An algorithmic technique that builds solutions incrementally, abandoning a path ('backtracking') when it determines the current path cannot lead to a valid solution.
2mo ago
algorithms advanced
An optimisation technique that solves problems by breaking them into overlapping subproblems, storing results to avoid redundant computation.
2mo ago
algorithms advanced
Algorithms for traversing, searching, and finding paths in graphs — BFS for shortest hops, DFS for exploration, Dijkstra for weighted shortest paths.
2mo ago
algorithms advanced
String Algorithms
Efficient string searching (KMP, Boyer-Moore, Rabin-Karp), edit distance (Levenshtein), and compression algorithms — foundational for search, diff tools, and bioinformatics.
2mo ago
algorithms advanced