Computer Science Engineering > Computer Algorithms
Computer Algorithms
Learn the Concepts of Computer Algorithms and test your knowledge

CHOOSE YOUR TOPIC
Recursion
In this topic, we learn about Reductions, Simplify and Delegate, Tower of Hanoi, Mergesort, Quicksort, The Pattern, Recursion Tree, Linear-Time Section, Fast Multiplication, Exponentiation
Backtracking
In this topic, we learn about N Queens, Game Trees, Subset Sum, The General Pattern, Text Segmentation, Longest Increasing Subsequence, Optimal Binary Search Trees
Dynamic Programming
In this topic, we learn about Interpunctio Verborum Redux, The Pattern: Smart Recursion, Longest Increasing Subsequence, Edit Distance etc
Greedy Algorithms
In this topic, we learn about Storing Files on Tape, Scheduling Classes, General patterns, Huffman Codes, Stable Matching
Basic Graph Algorithms
In this topic, we learn about Basic Definitions, Representations and Examples, Data Structures, Whatever-First Search, Important Variants Graph Reductions: Flood Fill
Depth-First Search
In this topic, we learn about Preorder and Postorder, Detecting Cycles, Topological Sort, Memoization and Dynamic Programming, Strong Connectivity, Strong Components in Linear Time
Minimum Spanning Trees
In this topic, we learn about Distinct Edge Weights, The Only Minimum Spanning Tree Algorithm, Borůvka’s Algorithm, Kruskal’s Algorithm, Jarník’s (“Prim’s”) Algorithm
Shortest Paths
In this topic, we learn about Shortest Path Trees, Negative Edges, The Only SSSP Algorithm, Unweighted Graphs: Breadth-First Search, 5 Directed Acyclic Graphs: Depth-First Search etc
All-Pairs Shortest Paths
In this topic, we learn about Lots of Single Sources, Reweighting, Johnson’s Algorithm, Dynamic Programming, Divide and Conquer, Funny Matrix Multiplication etc
Maximum Flows & Minimum Cuts
In this topic, we learn about Flows, Cuts, The Maxflow-Mincut Theorem, Ford and Fulkerson’s augmenting-path algorithm, Combining and Decomposing Flows, Edmonds and Karp’s Algorithms, Further Progress
Applications of Flows and Cuts
In this topic, we learn about Edge-Disjoint Paths, Vertex Capacities and Vertex-Disjoint Paths, Bipartite Matching, Tuple Selection, Disjoint-Path Covers, Baseball Elimination, Project Selection
NP-Hardness
In this topic, we learn about P versus NP, NP-hard, NP-easy, and NP-complete, Formal Definitions (HC SVNT DRACONES), Reductions and SAT, Maximum Independent Set (from 3SAT), The General Pattern etc