final Flashcards
spanning tree
A subset of edges of a graph that connects all the vertices without forming a cycle
MST
a spanning tree with the smallest possible total edge weight
Generic-MST Algorithm
An algorithm for finding a minimum spanning tree by adding safe edges iteratively
safe edge
An edge that can be added to the current tree without violating its properties as part of an MST
cut
a partition of the vertices of a graph into two disjoint subsets
light edge
the smallest weight edge crossing a given cut
edge replacement
The process of adding and removing edges to maintain a spanning tree structure
Prim’s Algorithm
A greedy algorithm that grows an MST starting from an arbitrary vertex
Kruskal’s Algorithm
A greedy algorithm that builds an MST by sorting edges and adding them while avoiding cycles
Union-Find Data Structure
A data structure that efficiently supports union and find operations for disjoint sets
Single-Source Shortest Path (SSSP)
The problem of finding the shortest paths from a single source vertex to all other vertices
relaxation
The process of updating an estimate of the shortest path in shortest-path algorithms
Dijkstra’s Algorithm
An algorithm for solving the SSSP problem on graphs with non-negative weights
Fibonacci Heaps
A data structure used to improve the running time of algorithms like Prim’s and Dijkstra’s
Flow Network
A directed graph with a capacity assigned to each edge, used to model flow problems
(s, t)-Flow
A function that represents the flow of material from source s to sink t under capacity and conservation constraints
Feasible Flow
A flow that satisfies capacity constraints
residual graph
A graph showing remaining capacities and possible reverse flows after some flow has been pushed
Max-Flow Min-Cut Theorem
States that the maximum value of an (s, t)-flow equals the capacity of the minimum (s, t)-cut
Augmenting Path
A path in the residual graph where additional flow can be pushed from s to t
Ford-Fulkerson Algorithm
A method to compute the maximum flow in a flow network by iteratively augmenting flow
along paths in the residual graph
Edmonds-Karp Algorithm #1
An implementation of Ford-Fulkerson that selects the widest augmenting path (the one with the largest bottleneck value)
Edmonds-Karp Algorithm #2
An implementation of Ford-Fulkerson that selects the shortest augmenting path in terms of edges (the smallest number of edges)
Bipartite Graph
A graph whose vertex set can be divided into two disjoint sets such that every edge connects a vertex from one set to the other