CSE 551 TEST 2 SOLUTIONS IN CLASS 03/27/18, 1 HOURS 15 MINUTES
|
|
- Estella Ramsey
- 5 years ago
- Views:
Transcription
1 CSE 551 TEST 2 SOLUTIONS IN CLASS 03/27/18, 1 HOURS 15 MINUTES Regrading of Midterms If you believe that your grade has not been recorded correctly, return the entire paper to the instructor with a short note indicating what you believe to be the error. Other than for that reason, test grades are almost never changed. If you believe that you did not receive the proper credit, first read these sample solutions carefully to see if you can understand the answer to your concern. If that does not resolve it, write a clear explanation of why you believe the grade is in error and submit that, along with the entire test paper, to the instructor. Please do not discuss in your explanation how your solution is like that of another student, as FERPA legislation makes it impossible for me to discuss one student s work with another. Please take into account that many papers were graded, and it is impossible to change the grade on one paper without giving every other student the same opportunity. If you nevertheless want the paper regraded, be advised that the entire paper will be regraded and the grade may go up, stay the same, or go down. The new grade will be final. It is a violation of the Academic Integrity Policy to request a grade change simply because you need or want a higher grade. If you require a clarification of the sample solutions (not a grade change or review as discussed above), ask in the office hours of the TA or instructor. You will be asked whether you have read the sample solution and to indicate what precisely is unclear to you about it, so read these sample solutions carefully first. Under no circumstances can anyone change a grade other than the instructor, so do not ask the TA to do so he is not able to. Grade review requests, whether submitted as described above or not, will not be considered if received after 10 April Name ASU ID Ima SAMPLE Answer every question, whether or not you think your answer is complete or correct. This is a closed book/closed notes examination. Ensure that no papers or electronic devices can be seen by any class member. Part of the exercise of doing the 1
2 questions is understanding the questions. Read each carefully so as not to waste time. All questions are equally weighted (but not necessarily equally difficult.) Please do not explain a general algorithm by giving examples on specific inputs. Describe the algorithm for the general case. Question Mark Out Of Total 40 Question 1. A 2-tree is an undirected graph, defined recursively as follows. A triangle (i.e. a simple graph on three nodes and three edges) is a 2-tree. When G 1 = (V 1, E 1 ) is a 2-tree, G 2 = (V 2, E 2 ) is a 2-tree, V 1 V 2 = {x, y}, and e = {x, y} E 1 E 2, the graph G = (V 1 V 2, E 1 E 2 ) is a2-tree. No graph is a 2-tree unless it is obtained in this way. In a node-weighted 2-tree G = (V, E), there is a weight function w : V Z (that is every node v V has an integer weight w(v)). Devise the most efficient algorithm that you can for finding a maximum weight independent set of nodes in a node-weighted 2-tree. If you define OPT in some way in a dynamic programming solution, each subproblem should be of the same type (i.e., a 2-tree). If it is something else you must say what to do in that case. Although not all 2-trees are maximal outerplanar graphs, it remains true that every 2-tree has at least two nodes of degree 2 (note that two nodes of degree 2 cannot be adjacent in a 2-tree with four or more nodes.) We describe an algorithm, reversing the construction that must have built the 2-tree from triangles. Define three functions on vertices corresponding to the edges of the 2-tree: f(x, y), s(x, y), n(x, y). Note that f(x, y) = s(y, x), s(x, y) = f(y, x), and n(x, y) = n(y, x). Initially for every edge (x, y) set all the f, s, n values to 0. While there are at least three vertices, pick a vertex v with degree 2 (which always exists). Let x, y be the
3 neighbors of v ({x, y} is an edge). Set f(x, y) f(x, y) + f(x, v) + n(v, y) s(x, y) s(x, y) + n(x, v) + s(v, y) n(x, y) n(x, y) + s(x, v) + f(v, y) + w(v) Now delete v. When only two vertices x, y remain, the final answer is max(f(x, y) + w(x), s(x, y) + w(y), n(x, y)). (This can be done in linear time, by maintaining a list of degree 2 nodes.) Although not every 2-tree is a mop, this is a small adaptation of the solution given on Homework 3 s solutions. Question 2. A tree G = (V, E) is given. Devise the most efficient algorithm that you can to find the number of edges in a maximum cardinality matching of G (i.e. a largest set of edges from E so that no node in V appears in more than one of the chosen edges). Explain.. Recall that a tree is a connected gtaph with no cycles. Unless you modify the tree. it does not have a root or children or parent nodes. If you do choose a root, there is no limit on the number of children. If you define OPT in some way in a dynamic programming solution, each subproblem should be of the same type (i.e., a tree). If it is a forest (or something else), you must say what to do in that case. Good answer: A tree is a bipartite graph. Colour the nodes black and white by first choosing any node to be black. Then as long as there is an uncoloured node x with a coloured neighbour y, colour x the opposite from y. Now direct all edges from black nodes to white ones and give each capacity 1. Add a new node s and an edge from s to each black node, with capacity 1. Then add a new node t and an edge from each white node to t with capacity 1. Then the value of the s, t-maxflow is the cardinality of the largest matching. So use Ford-Fulkerson. Excellent answer (a linear time algorithm): (This is like the answer to Question 1.) For each node v, we will keep track of two values out(v) and in(v); the first will record information when v is available to be matched, the second when v is not available to be matched. Here is the algorithm: Input: Tree G = (V, E) Initialize out(v) = in(v) = 0 for all v V. Compute the degree d(v) of each v V. Place all nodes v V with d(v) = 1 in L while L 2, choose an x L and let y be the only neighbour of x
4 compute in(y) max(in(y) + out(x), in(y) + in(x), out(y) + out(x) + 1) compute out(y) out(y) + max(in(x), out(x)) delete node x, set d(y) d(y) 1 if d(y) = 1, then add y to L. Let z be the only node in L The maximum cardinality matching has size max(in(z), out(z)). Question 3. A pipeline network has been constructed by providing a directed graph G, a source s, a terminal t, and a nonnegative capacity on every directed edge. We want it to have an s, t-flow maximum value of v, but it does not. (1) When our network has a maxflow of value v > v, Melvin says that we can reduce the capacity on a single directed edge to reduce the maxflow value. Is Melvin always right? (If yes, explain how you would find such an edge. If no such edge need exist, give an example. In either case, explain!) Melvin has been misquoted many times. Melvin says that for every flow network, there exists an edge on which you can reduce the capacity in order to reduce the maxflow. He does NOT say that you can pick any edge, or a random edge, or that he will pick an edge, to do this. Yes, Melvin is always right. By the maxflow-mincut theorem there is a cut of capacity v, say (A, B). This can be found using the Ford-Fulkerson algorithm. Choose any directed edge going from a node in A to a node in B, and reduce its capacity. Then (A, B) has capacity less than v, and so the maxflow is reduced. You cannot just pick a saturated edge in some maxflow and reduce its capacity, in general. (2) When our network has a maxflow of value v < v, Elmer says that we can increase the capacity on a single directed edge to increase the maxflow value. Is Elmer always right? (If yes, explain how you would find such an edge. If no such edge need exist, give an example. In either case, explain!) Elmer has also been misquoted many times. No, Elmer can be wrong. Construct a graph with three nodes {s, x, t}; directed edge (s, x) has capacity 1, and directed edge (x, t) has capacity 1. The maxflow value is 1. Suppose that v = 2. Increasing the capacity of either one (but not both) of the edges leaves the maxflow value unchanged.
5 The question says give an example. Saying how you might make an example does not actually give it, and indeed takes more space than simply giving one. Question 4. Here is the input to our happy worker problem: n workers W = {w 1,..., w n } and n jobs J = {j 1,... j n } δ days in a work schedule, where δ n. For each worker w W, there is a set T (w) J with T (w) = δ (these are the jobs to which w can be assigned). For each job j J, there is a set U(j) W with U(j) = δ (these are the workers who can be assigned to job j). We want to make a happy work schedule for δ days of work, so that (1) every worker is assigned exactly one job on each day, and does different jobs on different days, and (2) every job is done by exactly one worker each day. Devise the most efficient algorithm that you can to determine, given the input described, whether or not there is a happy work schedule. When it is possible, your algorithm should output the schedule determined. Hint: Can you figure out an assignment for the first day? There is always a happy work schedule. A schedule for the first day would be a perfect matching between workers and jobs. To find one, whenever worker w can do job j, make an edge from w to j with capacity 1. Add node s with edges to all workers, each of capacity 1. Add node t with edges from all jobs, each of capacity 1. Then when there is an integer-valued flow of value n, there is a perfect matching (and hence a schedule for one day). The assignment is precisely the worker-job edges with flow value equal to 1. Ford-Fulkerson does this. Having found a schedule for one day, for each edge (w, j) in the matching found remove w from U(j) and j from T (w). Then we have a problem of identical type for δ 1 days. So repeat until δ = 0 and then stop, outputting the schedules for each day. You are not asked about correctness of the method. But why does it work? You can appeal to the Philip Hall theorem, or directly consider what a minimum cut would look like if an iteration hypothetically failed for find the flow of value n.
Homework 3 Solutions
CS3510 Design & Analysis of Algorithms Section A Homework 3 Solutions Released: 7pm, Wednesday Nov 8, 2017 This homework has a total of 4 problems on 4 pages. Solutions should be submitted to GradeScope
More informationJessica Su (some parts copied from CLRS / last quarter s notes)
1 Max flow Consider a directed graph G with positive edge weights c that define the capacity of each edge. We can identify two special nodes in G: the source node s and the sink node t. We want to find
More informationCPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60
CPS 102: Discrete Mathematics Instructor: Bruce Maggs Quiz 3 Date: Wednesday November 30, 2011 NAME: Prob # Score Max Score 1 10 2 10 3 10 4 10 5 10 6 10 Total 60 1 Problem 1 [10 points] Find a minimum-cost
More informationMC302 GRAPH THEORY SOLUTIONS TO HOMEWORK #1 9/19/13 68 points + 6 extra credit points
MC02 GRAPH THEORY SOLUTIONS TO HOMEWORK #1 9/19/1 68 points + 6 extra credit points 1. [CH] p. 1, #1... a. In each case, for the two graphs you say are isomorphic, justify it by labeling their vertices
More informationMathematics Masters Examination
Mathematics Masters Examination OPTION 4 Fall 2011 COMPUTER SCIENCE??TIME?? NOTE: Any student whose answers require clarification may be required to submit to an oral examination. Each of the twelve numbered
More informationLecture 3: Graphs and flows
Chapter 3 Lecture 3: Graphs and flows Graphs: a useful combinatorial structure. Definitions: graph, directed and undirected graph, edge as ordered pair, path, cycle, connected graph, strongly connected
More information(Refer Slide Time: 05:25)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering IIT Delhi Lecture 30 Applications of DFS in Directed Graphs Today we are going to look at more applications
More informationGraphs (MTAT , 6 EAP) Lectures: Mon 14-16, hall 404 Exercises: Wed 14-16, hall 402
Graphs (MTAT.05.080, 6 EAP) Lectures: Mon 14-16, hall 404 Exercises: Wed 14-16, hall 402 homepage: http://courses.cs.ut.ee/2012/graafid (contains slides) For grade: Homework + three tests (during or after
More informationAMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12.
AMS 550.47/67: Graph Theory Homework Problems - Week V Problems to be handed in on Wednesday, March : 6, 8, 9,,.. Assignment Problem. Suppose we have a set {J, J,..., J r } of r jobs to be filled by a
More informationSolutions for the Exam 6 January 2014
Mastermath and LNMB Course: Discrete Optimization Solutions for the Exam 6 January 2014 Utrecht University, Educatorium, 13:30 16:30 The examination lasts 3 hours. Grading will be done before January 20,
More informationIn this lecture, we ll look at applications of duality to three problems:
Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,
More informationParallel Breadth First Search
CSE341T/CSE549T 11/03/2014 Lecture 18 Parallel Breadth First Search Today, we will look at a basic graph algorithm, breadth first search (BFS). BFS can be applied to solve a variety of problems including:
More informationGreedy algorithms is another useful way for solving optimization problems.
Greedy Algorithms Greedy algorithms is another useful way for solving optimization problems. Optimization Problems For the given input, we are seeking solutions that must satisfy certain conditions. These
More informationProblem Set 7 Solutions
Design and Analysis of Algorithms March 0, 2015 Massachusetts Institute of Technology 6.046J/18.410J Profs. Erik Demaine, Srini Devadas, and Nancy Lynch Problem Set 7 Solutions Problem Set 7 Solutions
More information5 Matchings in Bipartite Graphs and Their Applications
5 Matchings in Bipartite Graphs and Their Applications 5.1 Matchings Definition 5.1 A matching M in a graph G is a set of edges of G, none of which is a loop, such that no two edges in M have a common
More information5. Lecture notes on matroid intersection
Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a
More informationGraph Algorithms (part 3 of CSC 282),
Graph Algorithms (part of CSC 8), http://www.cs.rochester.edu/~stefanko/teaching/10cs8 1 Schedule Homework is due Thursday, Oct 1. The QUIZ will be on Tuesday, Oct. 6. List of algorithms covered in the
More informationIndicate the option which most accurately completes the sentence.
Discrete Structures, CSCI 246, Fall 2015 Final, Dec. 10 Indicate the option which most accurately completes the sentence. 1. Say that Discrete(x) means that x is a discrete structures exam and Well(x)
More informationCS261: Problem Set #2
CS261: Problem Set #2 Due by 11:59 PM on Tuesday, February 9, 2016 Instructions: (1) Form a group of 1-3 students. You should turn in only one write-up for your entire group. (2) Submission instructions:
More informationChapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn
Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn Graphs Extremely important concept in computer science Graph, : node (or vertex) set : edge set Simple graph: no self loops, no multiple
More informationHomework #5 Algorithms I Spring 2017
Homework #5 Algorithms I 600.463 Spring 2017 Due on: Saturday, March 18th, 11:59pm Late submissions: will NOT be accepted Format: Please start each problem on a new page. Where to submit: On Gradescope,
More informationAssignment 1 Introduction to Graph Theory CO342
Assignment 1 Introduction to Graph Theory CO342 This assignment will be marked out of a total of thirty points, and is due on Thursday 18th May at 10am in class. Throughout the assignment, the graphs are
More informationLecture 6: Graph Properties
Lecture 6: Graph Properties Rajat Mittal IIT Kanpur In this section, we will look at some of the combinatorial properties of graphs. Initially we will discuss independent sets. The bulk of the content
More informationMatching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.
18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have
More information6. Lecture notes on matroid intersection
Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm
More informationProblem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.
CS261, Winter 2017. Instructor: Ashish Goel. Problem set 2 Electronic submission to Gradescope due 11:59pm Thursday 2/16. Form a group of 2-3 students that is, submit one homework with all of your names.
More informationCSE 417 Network Flows (pt 4) Min Cost Flows
CSE 417 Network Flows (pt 4) Min Cost Flows Reminders > HW6 is due Monday Review of last three lectures > Defined the maximum flow problem find the feasible flow of maximum value flow is feasible if it
More information1. Lecture notes on bipartite matching February 4th,
1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)
More informationAnnouncements. HW3 is graded. Average is 81%
CSC263 Week 9 Announcements HW3 is graded. Average is 81% Announcements Problem Set 4 is due this Tuesday! Due Tuesday (Nov 17) Recap The Graph ADT definition and data structures BFS gives us single-source
More informationSolutions to Midterm 2 - Monday, July 11th, 2009
Solutions to Midterm - Monday, July 11th, 009 CPSC30, Summer009. Instructor: Dr. Lior Malka. (liorma@cs.ubc.ca) 1. Dynamic programming. Let A be a set of n integers A 1,..., A n such that 1 A i n for each
More informationCSCI 2200 Foundations of Computer Science (FoCS) Homework 6 (document version 1.0) This homework is due by 11:59:59 PM on Friday, March 23, 2018.
CSCI 2200 Foundations of Computer Science (FoCS) Homework 6 (document version 1.0) Overview This homework is due by 11:59:59 PM on Friday, March 23, 2018. This homework is to be completed individually.
More informationLECTURES 3 and 4: Flows and Matchings
LECTURES 3 and 4: Flows and Matchings 1 Max Flow MAX FLOW (SP). Instance: Directed graph N = (V,A), two nodes s,t V, and capacities on the arcs c : A R +. A flow is a set of numbers on the arcs such that
More informationCS 217 Algorithms and Complexity Homework Assignment 2
CS 217 Algorithms and Complexity Homework Assignment 2 Shanghai Jiaotong University, Fall 2015 Handed out on 2015-10-19 Due on 2015-10-26 You can hand in your solution either as a printed file or hand-written
More informationCOMP3121/3821/9101/ s1 Assignment 1
Sample solutions to assignment 1 1. (a) Describe an O(n log n) algorithm (in the sense of the worst case performance) that, given an array S of n integers and another integer x, determines whether or not
More informationHomework 4 Even numbered problem solutions cs161 Summer 2009
Homework 4 Even numbered problem solutions cs6 Summer 2009 Problem 2: (a). No Proof: Given a graph G with n nodes, the minimum spanning tree T has n edges by virtue of being a tree. Any other spanning
More informationCS261: Problem Set #1
CS261: Problem Set #1 Due by 11:59 PM on Tuesday, April 21, 2015 Instructions: (1) Form a group of 1-3 students. You should turn in only one write-up for your entire group. (2) Turn in your solutions by
More informationCS264: Homework #4. Due by midnight on Wednesday, October 22, 2014
CS264: Homework #4 Due by midnight on Wednesday, October 22, 2014 Instructions: (1) Form a group of 1-3 students. You should turn in only one write-up for your entire group. (2) Turn in your solutions
More informationCONNECTIVITY AND NETWORKS
CONNECTIVITY AND NETWORKS We begin with the definition of a few symbols, two of which can cause great confusion, especially when hand-written. Consider a graph G. (G) the degree of the vertex with smallest
More informationγ(ɛ) (a, b) (a, d) (d, a) (a, b) (c, d) (d, d) (e, e) (e, a) (e, e) (a) Draw a picture of G.
MAD 3105 Spring 2006 Solutions for Review for Test 2 1. Define a graph G with V (G) = {a, b, c, d, e}, E(G) = {r, s, t, u, v, w, x, y, z} and γ, the function defining the edges, is given by the table ɛ
More informationGraph theory - solutions to problem set 1
Graph theory - solutions to problem set 1 1. (a) Is C n a subgraph of K n? Exercises (b) For what values of n and m is K n,n a subgraph of K m? (c) For what n is C n a subgraph of K n,n? (a) Yes! (you
More informationAnswers to specimen paper questions. Most of the answers below go into rather more detail than is really needed. Please let me know of any mistakes.
Answers to specimen paper questions Most of the answers below go into rather more detail than is really needed. Please let me know of any mistakes. Question 1. (a) The degree of a vertex x is the number
More informationSolving problems on graph algorithms
Solving problems on graph algorithms Workshop Organized by: ACM Unit, Indian Statistical Institute, Kolkata. Tutorial-3 Date: 06.07.2017 Let G = (V, E) be an undirected graph. For a vertex v V, G {v} is
More informationCS 161 Lecture 11 BFS, Dijkstra s algorithm Jessica Su (some parts copied from CLRS) 1 Review
1 Review 1 Something I did not emphasize enough last time is that during the execution of depth-firstsearch, we construct depth-first-search trees. One graph may have multiple depth-firstsearch trees,
More informationExercise set 2 Solutions
Exercise set 2 Solutions Let H and H be the two components of T e and let F E(T ) consist of the edges of T with one endpoint in V (H), the other in V (H ) Since T is connected, F Furthermore, since T
More informationDr. Amotz Bar-Noy s Compendium of Algorithms Problems. Problems, Hints, and Solutions
Dr. Amotz Bar-Noy s Compendium of Algorithms Problems Problems, Hints, and Solutions Chapter 1 Searching and Sorting Problems 1 1.1 Array with One Missing 1.1.1 Problem Let A = A[1],..., A[n] be an array
More informationMath 4410 Fall 2010 Exam 3. Show your work. A correct answer without any scratch work or justification may not receive much credit.
Math 4410 Fall 2010 Exam 3 Name: Directions: Complete all six questions. Show your work. A correct answer without any scratch work or justification may not receive much credit. You may not use any notes,
More informationBipartite Matching & the Hungarian Method
Bipartite Matching & the Hungarian Method Last Revised: 15/9/7 These notes follow formulation originally developed by Subhash Suri in http://www.cs.ucsb.edu/ suri/cs/matching.pdf We previously saw how
More informationQuestions Total Points Score
HKUST Department of Computer Science and Engineering # COMP3711H: Design and Analysis of Algorithms Fall 2016 Final Examination Date: Friday December 16, 2016 Time: 16:30-19:30 Venue: LG3 Multipurpose
More informationPolynomial-Time Approximation Algorithms
6.854 Advanced Algorithms Lecture 20: 10/27/2006 Lecturer: David Karger Scribes: Matt Doherty, John Nham, Sergiy Sidenko, David Schultz Polynomial-Time Approximation Algorithms NP-hard problems are a vast
More informationMatchings, Ramsey Theory, And Other Graph Fun
Matchings, Ramsey Theory, And Other Graph Fun Evelyne Smith-Roberge University of Waterloo April 5th, 2017 Recap... In the last two weeks, we ve covered: What is a graph? Eulerian circuits Hamiltonian
More informationGraph Algorithms (part 3 of CSC 282),
Graph Algorithms (part of CSC 8), http://www.cs.rochester.edu/~stefanko/teaching/11cs8 Homework problem sessions are in CSB 601, 6:1-7:1pm on Oct. (Wednesday), Oct. 1 (Wednesday), and on Oct. 19 (Wednesday);
More informationCS 341: Algorithms. Douglas R. Stinson. David R. Cheriton School of Computer Science University of Waterloo. February 26, 2019
CS 341: Algorithms Douglas R. Stinson David R. Cheriton School of Computer Science University of Waterloo February 26, 2019 D.R. Stinson (SCS) CS 341 February 26, 2019 1 / 296 1 Course Information 2 Introduction
More informationGraph Algorithms. Definition
Graph Algorithms Many problems in CS can be modeled as graph problems. Algorithms for solving graph problems are fundamental to the field of algorithm design. Definition A graph G = (V, E) consists of
More informationand 6.855J March 6, Maximum Flows 2
5.08 and.855j March, 00 Maximum Flows Network Reliability Communication Network What is the maximum number of arc disjoint paths from s to t? How can we determine this number? Theorem. Let G = (N,A) be
More informationTreewidth and graph minors
Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under
More informationOn some problems in graph theory: from colourings to vertex identication
On some problems in graph theory: from colourings to vertex identication F. Foucaud 1 Joint works with: E. Guerrini 1,2, R. Klasing 1, A. Kosowski 1,3, M. Kov²e 1,2, R. Naserasr 1, A. Parreau 2, A. Raspaud
More informationGraph Theory Questions from Past Papers
Graph Theory Questions from Past Papers Bilkent University, Laurence Barker, 19 October 2017 Do not forget to justify your answers in terms which could be understood by people who know the background theory
More informationHomework No. 4 Answers
Homework No. 4 Answers CSCI 4470/6470 Algorithms, CS@UGA, Spring 2018 Due Thursday March 29, 2018 There are 100 points in total. 1. (20 points) Consider algorithm DFS (or algorithm To-Start-DFS in Lecture
More informationGreedy Approximations
CS 787: Advanced Algorithms Instructor: Dieter van Melkebeek Greedy Approximations Approximation algorithms give a solution to a problem in polynomial time, at most a given factor away from the correct
More informationASSIGNMENT 4 SOLUTIONS
MATH 71 ASSIGNMENT SOLUTIONS 1. If F : X X is a function, define f (x) to be (f f)(x), and inductively define f k (x) (f f k 1 )(x) for each integer k. (So f (x) (f f )(x) f(f(f(x))) for instance.) We
More informationarxiv: v1 [math.ho] 7 Nov 2017
An Introduction to the Discharging Method HAOZE WU Davidson College 1 Introduction arxiv:1711.03004v1 [math.ho] 7 Nov 017 The discharging method is an important proof technique in structural graph theory.
More informationA Variant of the Erdős-Sós Conjecture
A Variant of the Erdős-Sós Conjecture Frédéric Havet Bruce Reed Maya Stein David R. Wood June 0, 016 Abstract A well-known conjecture of Erdős and Sós states that every graph with average degree exceeding
More informationDual-fitting analysis of Greedy for Set Cover
Dual-fitting analysis of Greedy for Set Cover We showed earlier that the greedy algorithm for set cover gives a H n approximation We will show that greedy produces a solution of cost at most H n OPT LP
More information2. CONNECTIVITY Connectivity
2. CONNECTIVITY 70 2. Connectivity 2.1. Connectivity. Definition 2.1.1. (1) A path in a graph G = (V, E) is a sequence of vertices v 0, v 1, v 2,..., v n such that {v i 1, v i } is an edge of G for i =
More informationSolution for Homework set 3
TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities
More informationMaximum flows & Maximum Matchings
Chapter 9 Maximum flows & Maximum Matchings This chapter analyzes flows and matchings. We will define flows and maximum flows and present an algorithm that solves the maximum flow problem. Then matchings
More informationNotes slides from before lecture. CSE 21, Winter 2017, Section A00. Lecture 9 Notes. Class URL:
Notes slides from before lecture CSE 21, Winter 2017, Section A00 Lecture 9 Notes Class URL: http://vlsicad.ucsd.edu/courses/cse21-w17/ Notes slides from before lecture Notes February 8 (1) HW4 is due
More informationNetwork Flow I. Lecture Overview The Network Flow Problem
Lecture Network Flow I. Overview In these next two lectures we are going to talk about an important algorithmic problem called the Network Flow Problem. Network flow is important because it can be used
More informationProof: if not f[u] < d[v], then u still grey while v is being visited. DFS visit(v) will then terminate before DFS visit(u).
Parenthesis property of DFS discovery and finishing times (Thm 23.6 of CLR): For any two nodes u,v of a directed graph, if d[u] < d[v] (i.e. u discovered before v), either f[v] < f[u] (i.e. visit time
More information2. True or false: even though BFS and DFS have the same space complexity, they do not always have the same worst case asymptotic time complexity.
1. T F: Consider a directed graph G = (V, E) and a vertex s V. Suppose that for all v V, there exists a directed path in G from s to v. Suppose that a DFS is run on G, starting from s. Then, true or false:
More informationDFS & STRONGLY CONNECTED COMPONENTS
DFS & STRONGLY CONNECTED COMPONENTS CS 4407 Search Tree Breadth-First Search (BFS) Depth-First Search (DFS) Depth-First Search (DFS) u d[u]: when u is discovered f[u]: when searching adj of u is finished
More informationExam problems for the course Combinatorial Optimization I (DM208)
Exam problems for the course Combinatorial Optimization I (DM208) Jørgen Bang-Jensen Department of Mathematics and Computer Science University of Southern Denmark The problems are available form the course
More informationThese are not polished as solutions, but ought to give a correct idea of solutions that work. Note that most problems have multiple good solutions.
CSE 591 HW Sketch Sample Solutions These are not polished as solutions, but ought to give a correct idea of solutions that work. Note that most problems have multiple good solutions. Problem 1 (a) Any
More informationHomework 2. Sample Solution. Due Date: Thursday, May 31, 11:59 pm
Homework Sample Solution Due Date: Thursday, May 31, 11:59 pm Directions: Your solutions should be typed and submitted as a single pdf on Gradescope by the due date. L A TEX is preferred but not required.
More information2. Lecture notes on non-bipartite matching
Massachusetts Institute of Technology 18.433: Combinatorial Optimization Michel X. Goemans February 15th, 013. Lecture notes on non-bipartite matching Given a graph G = (V, E), we are interested in finding
More informationLet G = (V, E) be a graph. If u, v V, then u is adjacent to v if {u, v} E. We also use the notation u v to denote that u is adjacent to v.
Graph Adjacent Endpoint of an edge Incident Neighbors of a vertex Degree of a vertex Theorem Graph relation Order of a graph Size of a graph Maximum and minimum degree Let G = (V, E) be a graph. If u,
More informationCHAPTER 2. Graphs. 1. Introduction to Graphs and Graph Isomorphism
CHAPTER 2 Graphs 1. Introduction to Graphs and Graph Isomorphism 1.1. The Graph Menagerie. Definition 1.1.1. A simple graph G = (V, E) consists of a set V of vertices and a set E of edges, represented
More information1. Lecture notes on bipartite matching
Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in
More informationGrade 7/8 Math Circles Graph Theory - Solutions October 13/14, 2015
Faculty of Mathematics Waterloo, Ontario N2L 3G1 Centre for Education in Mathematics and Computing Grade 7/8 Math Circles Graph Theory - Solutions October 13/14, 2015 The Seven Bridges of Königsberg In
More informationSection Summary. Introduction to Trees Rooted Trees Trees as Models Properties of Trees
Chapter 11 Copyright McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill Education. Chapter Summary Introduction to Trees Applications
More information1 Bipartite maximum matching
Cornell University, Fall 2017 Lecture notes: Matchings CS 6820: Algorithms 23 Aug 1 Sep These notes analyze algorithms for optimization problems involving matchings in bipartite graphs. Matching algorithms
More informationDiscrete Applied Mathematics. A revision and extension of results on 4-regular, 4-connected, claw-free graphs
Discrete Applied Mathematics 159 (2011) 1225 1230 Contents lists available at ScienceDirect Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam A revision and extension of results
More informationVertex-Colouring Edge-Weightings
Vertex-Colouring Edge-Weightings L. Addario-Berry a, K. Dalal a, C. McDiarmid b, B. A. Reed a and A. Thomason c a School of Computer Science, McGill University, University St. Montreal, QC, H3A A7, Canada
More informationDefinition 1.1. A matching M in a graph G is called maximal if there is no matching M in G so that M M.
1 Matchings Before, we defined a matching as a set of edges no two of which share an end in common. Suppose that we have a set of jobs and people and we want to match as many jobs to people as we can.
More informationExam 3 Practice Problems
Exam 3 Practice Problems HONOR CODE: You are allowed to work in groups on these problems, and also to talk to the TAs (the TAs have not seen these problems before and they do not know the solutions but
More information1 Variations of the Traveling Salesman Problem
Stanford University CS26: Optimization Handout 3 Luca Trevisan January, 20 Lecture 3 In which we prove the equivalence of three versions of the Traveling Salesman Problem, we provide a 2-approximate algorithm,
More informationLargest Online Community of VU Students
WWW.VUPages.com http://forum.vupages.com WWW.VUTUBE.EDU.PK Largest Online Community of VU Students MIDTERM EXAMINATION SEMESTER FALL 2003 CS301-DATA STRUCTURE Total Marks:86 Duration: 60min Instructions
More informationCSE 21 Spring 2016 Homework 5. Instructions
CSE 21 Spring 2016 Homework 5 Instructions Homework should be done in groups of one to three people. You are free to change group members at any time throughout the quarter. Problems should be solved together,
More informationEulerian Paths and Cycles
Eulerian Paths and Cycles What is a Eulerian Path Given an graph. Find a path which uses every edge exactly once. This path is called an Eulerian Path. If the path begins and ends at the same vertex, it
More informationMAT 4199C/5107 Second Homework Assignment Due 13 Feb by 1:00pm
Marks: LAST NAME: First name: Student number: MAT 4199C/5107 Second Homework Assignment Due 13 Feb. 2019 by 1:00pm Instructions: The question labelled (U) is for undergraduate students only, while question
More informationMatching Theory. Amitava Bhattacharya
Matching Theory Amitava Bhattacharya amitava@math.tifr.res.in Definition: A simple graph is a triple G = (V, E, φ), where V is a finite set of vertices, E is a finite set of edges, and φ is a function
More informationGraph Theory II. Po-Shen Loh. June edges each. Solution: Spread the n vertices around a circle. Take parallel classes.
Graph Theory II Po-Shen Loh June 009 1 Warm-up 1. Let n be odd. Partition the edge set of K n into n matchings with n 1 edges each. Solution: Spread the n vertices around a circle. Take parallel classes..
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 4 Graphs Definitions Traversals Adam Smith 9/8/10 Exercise How can you simulate an array with two unbounded stacks and a small amount of memory? (Hint: think of a
More informationChapter 16: Greedy Algorithm
Chapter 16: Greedy Algorithm 1 About this lecture Introduce Greedy Algorithm Look at some problems solvable by Greedy Algorithm 2 Coin Changing Suppose that in a certain country, the coin dominations consist
More informationCSCI 5454 Ramdomized Min Cut
CSCI 5454 Ramdomized Min Cut Sean Wiese, Ramya Nair April 8, 013 1 Randomized Minimum Cut A classic problem in computer science is finding the minimum cut of an undirected graph. If we are presented with
More informationGraphs and Algorithms 2015
Graphs and Algorithms 2015 Teachers: Nikhil Bansal and Jorn van der Pol Webpage: www.win.tue.nl/~nikhil/courses/2wo08 (for up to date information, links to reading material) Goal: Have fun with discrete
More informationEfficient Enumeration Algorithm for Dominating Sets in Bounded Degenerate Graphs
Efficient Enumeration Algorithm for Dominating Sets in Bounded Degenerate Graphs Kazuhiro Kurita 1, Kunihiro Wasa 2, Hiroki Arimura 1, and Takeaki Uno 2 1 IST, Hokkaido University, Sapporo, Japan 2 National
More informationON VERTEX b-critical TREES. Mostafa Blidia, Noureddine Ikhlef Eschouf, and Frédéric Maffray
Opuscula Math. 33, no. 1 (2013), 19 28 http://dx.doi.org/10.7494/opmath.2013.33.1.19 Opuscula Mathematica ON VERTEX b-critical TREES Mostafa Blidia, Noureddine Ikhlef Eschouf, and Frédéric Maffray Communicated
More informationMaximum Flow. Flow Networks. Flow Networks Ford-Fulkerson Method Edmonds-Karp Algorithm Push-Relabel Algorithms. Example Flow Network
Flow Networks Ford-Fulkerson Method Edmonds-Karp Algorithm Push-Relabel Algorithms Maximum Flow Flow Networks A flow network is a directed graph where: Each edge (u,v) has a capacity c(u,v) 0. If (u,v)
More informationA graph is finite if its vertex set and edge set are finite. We call a graph with just one vertex trivial and all other graphs nontrivial.
2301-670 Graph theory 1.1 What is a graph? 1 st semester 2550 1 1.1. What is a graph? 1.1.2. Definition. A graph G is a triple (V(G), E(G), ψ G ) consisting of V(G) of vertices, a set E(G), disjoint from
More information