This preview shows page 1. Sign up to view the full content.
Unformatted text preview: Introduction to Algorithms
Massachusetts Institute of Technology
Professors Erik Demaine and Shaﬁ Goldwasser May 7, 2004
6.046J/18.410J
Handout 24 Problem Set 8 (Optional)
This problem set is not due and is meant as practice for the ﬁnal. Reading: 26.1, 26.3, 35.1
Problem 81. Prove these problems are NPComplete: R
P D ¢
QIHGFECB
¡'%&$¡
#
¡
!¦¦©§¥£¡
¨ ¦¤ ¢ (a) S ETC OVER : Given a ﬁnite set , a collection
, and an integer , determine whether there is a subcollection of
that covers . In other words, determine whether there exists
and
. of subsets of
with cardinality
such that FV
XWUTSR
¢ 2 A@¦8976543$1
" "0¢ #
( )¡ ( " and two dis(b) D IRECTED H AMILTONIAN PATH : given a directed graph
tinct vertices
, determine whether contains a path that starts at , ends at ,
and visits every vertex of the graph exactly once. (Hint: Reduce from H AM  CYCLE :
34.5.3 in CLRS.) T B Problem 82. M AX C UT Approximation P ¢
QIHGFD ¥B
¦ a
tsF
I VP
r&qUTSpRD
P D ¢
gIHGFfeB ¦ a
ihF
P¦ a
dcb`FYG¦D A cut
of an undirected graph
is a partition of V into two disjoint subsets
and
. We say that an edge
crosses the cut
if one of its endpoints
is in and the other is in
. The MAX  CUT problem is the problem of ﬁnding a cut of an
undirected connected graph
that maximizes the number of edges crossing the cut.
Give a deterministic approximation algorithm for this problem with a ratio bound of . Hint: Your
algorithm should guarantee that the number of edges crossing the cut is at least half of the total
number of edges. P¦ a
dch`FYG¦D u ¦ ¦ Problem 83. Global Edge Connectivity of Undirected and Directed Graphs
(a) The global edge connectivity of an undirected graph is the minimum number of edges
that must be removed to disconnect the graph. Show how the edge connectivity of
an undirected graph
can be determined by running the maximumﬂow
algorithm
times, each on a ﬂow network with
vertices and
edges. P ( I (
D P ( F (
D P D ¢
gIHGFwvB B x
ya ( F ( (b) The global edge connectivity of a directed graph is the minimum number of directed
edges that must be removed from so that the resulting graph is no longer strongly
connected. Show how the edge connectivity of a directed graph
can
times, each on a ﬂow
be determined by running the maximumﬂow algorithm
vertices and
edges.
network with P
gIHGFD ¢ B ( F( B P ( I (
D P ( F (
D Problem 84. Perfect Matching in Regular Bipartite Graph
F
¢ , where , is regular if every vertex F V
T P D ¢
gIHGFB A bipartite graph
exactly . has degree Handout 24: Problem Set 8 (Optional) 2 ( ( ¢ ( ( (a) Prove that for every regular bipartite graph, . (b) Model the maximum dregular bipartite matching as a maxﬂow problem as in Section
26.3 in CLRS. Show that the maxﬂow value from to in the formulation is . ( (
( ( ¡ (c) Prove that every regular bipartite graph has a matching of cardinality . ...
View Full
Document
 Spring '04
 ErikDemaine
 Algorithms

Click to edit the document details