spanning trees
DESCRIPTION
Spanning tree presentationTRANSCRIPT
Spanning trees of a graph
Definition
A subgraph T of a undirected graph G is a spanning tree of G if it is a tree and contains every vertex of G
a tree is an undirected graph in which any two vertices are connected by exactly one path.
Theorem
Every connected graph has a spanning tree.
Why is this true?
Given a connected graph of G. How can you find a spanning tree of G?
Weighted graphs
A weighted graph is a graph in which every edge has a weight (some real number).
Weight of the graph = The sum of weights of all edges.
Minimum spanning tree
A minimum spanning tree in an undirected connected weighted graph is a spanning tree of minimum weight (among all spanning trees).
Minimum spanning tree may not be unique
Minimum spanning tree (MST) problem
Given a connected weighted undirected graph G, design an algorithm that outputs a minimum spanning tree (MST) of G.
The MST is fundamental problem with diverse applications.
• Network design.
telephone, electrical, hydraulic, TV cable, computer, road
• Approximation algorithms for NP-hard problems.
traveling salesperson problem, Steiner tree
• Indirect applications.
learning salient features for real-time face verification
reducing data storage in sequencing amino acids in a protein
model locality of particle interactions in turbulent fluid flows
MST describes arrangement of nuclei in the epithelium for cancer research
What is the most intuitive way to solve?
How to find a MST?
Kruskal’s algorithm
Consider edges in ascending order of cost. Add the next edge to T unless doing so would create a cycle.
Kruskal’s algorithm