CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines. Problem 1
|
|
- Magnus Little
- 6 years ago
- Views:
Transcription
1 CSE 591 Foundations of Algorithms Homework 4 Sample Solution Outlines Problem 1 (a) Consider the situation in the figure, every edge has the same weight and V = n = 2k + 2. Easy to check, every simple path from s to t is a shortest path and the number of such paths is 2 k+1 = 2 n/2 which grows fast than any polynomial function of n. There are millions of possible answers as well. (b) We just a need small modification for Dijkstra s algorithm. Modified Dijkstra s algorithm Let dis[] be distance vector Let num[] be a vector for number of shortest paths Let Q be a priority queue for each vertex v do dis[v] = num[v] = 0 end for dis[s] = 0 num[s] = 1 Add every vertex to Q while Q is not empty do u = vertex in Q with min dis[u] Remove u from Q for each neighbor v of u do if dis[u] + length(u, v) < dis[v] then 1
2 dis[v] = dis[u] + length(u, v) num[v] = num[u] else if dis[u] + length(u, b) == dis[v] then num[v]+ = num[u] end if end for end while Output num[t] num[t] is the number of shortest s t paths. The algorithm works correctly since we update num[v] only when the current path length is shortest. Also, if v s predecessor, u, is also on v s shortest path, we should add num[u] to num[v] by property of optimal substructure. The complexity of the algorithm is the same as original Dijkstra s algorithm. Problem 2 Recall from class that given an RNA sequence x 1 x n, we computed the largest number of matching pairs opt(i, j) for each consecutive subsequence x i x j for 1 i < j n by dynamic programming working from the smallest values of j i to the largest. Now we want the largest κ numbers of matching pairs in a solution; in the problem statement, κ = 10 but we will state it generally. We keep track of the best κ sizes for each choice of i and j, so that opt(i, j) is now a multiset of size at most κ. The only change we make is in the recurrence for opt(i, j). We compute it as follows. When j i 4, the multiset opt(i, j) = {0}, because sharp turns are not permitted. For two multisets A and B, let A B be the multiset {a+b : a A, b B}. To compute opt(i, j), we form a set X of candidates. Initially X is empty. For every i t < j 4 for which {x j, x t } = {C, G} or {x j, x t } = {A, U}, add the elements of opt(i, t 1) opt(t + 1, j 1) to X. Remove all but the κ largest elements in X; then add 1 to each entry. Keeping track of the actual sets of matching pairs is now straightforward; each size in one of the multisets can be associated with a specific set of matching pairs. The run time is (up to O( )) the same as the original algorithm when κ is fixed. Problem 3 In order to avoid kinks, we use different states. Let opt(i, j) be the optimal number of matching pairs without kinks, sharp turns and crossings between position i and j. In addition, we let f(i, j) be the optimal number of pairs between position i and i if x i and x j could be matched and here we force x i matched to x j and all other inside matching pairs are valid. Then, we can derive recurrence relation between opt(i, j) and f(i, j). if x j is not involved in any pair, then Otherwise, opt(i, j) = opt(i, j 1) 2
3 opt(i, j) = max{opt(i, t 1) + f(t, j)} for all t such that x t is matched to x j and j > t + 4. The idea is to enumerate the pair that j is involved and by definition, it is f(t, j). The rest sequence becomes a subproblem which is opt(i, t 1). Then let s look at structure of f(i, j). As we define, x i is matched to x j and we need to handle subsequence from x i+1 to x j 1. If we use opt(i + 1, j 1) directly, we may fall to the trap since opt(i + 1, j 1) may be obtained from f(i + 1, j 2) or f(i + 2, j 1) which forms a kink. In order to avoid that, we can enumerate matching pairs that x i+1 and x j 1 are involved. Initially, we set every f(i, j) be 1, and we have following recursion: First, we focus on x i+1 f(i, j) = max{f(i, j), 1 + max{f(i + 1, t) + opt(t + 1, j 1)}} here we check all t > i such that x t could be paired with x i and t j 2. Again, we are enumerating the pair where x i is matched and it won t create a kink. Similarly, we could handle x j 1 f(i, j) = max{f(i, j), 1 + max{opt(i + 1, t 1) + f(t, j 1)}} for all t < j 1 4 except t = i + 2. Finally, we may also consider the case where neither x i+1 nor x j 1 is in the substructure, then we have For edge cases, we have f(i, j) = max{f(i, j), 1 + opt(i + 2, j 2)} f(i, j) = 1 if j = i + 5 opt(i, j) = 0 if i j 4 All entries can be computed in O(n 3 ) time where n is the length of whole sequence. Problem 4 Let V = n and w(e) = 1 for every edge. Select arbitrarily a vertex r and treat it as the root of the tree. The distance from r to every vertex can be calculated using, for example, breadth-first search in time linear in the number of edges (and hence linear in the number of vertices because G is a tree). The total of the distances from r can be calculated, and dividing this total by n yields the average distance from 3
4 r. Our objective, therefore, is to select a root r that minimizes the total of the distances from r. Suppose that we rooted the tree at r. We calculate, for each vertex v, its number δ v of descendants in the tree as follows. First compute the degree d v of each vertex in O(n) time; in the process form a list L of non-root vertices of degree 1. Initialize δ v = 1 for each vertex. Now while L is not empty, choose v L, let w be the parent of v, add δ v to δ w, delete v, and if w now has degree 1 (i.e., has no other children), add w to L unless it is the root. When L becomes empty, for every vertex v we have that δ v is the count of its descendants. We claim that r is a correct vertex at which to place the CA if and only if every child c of r has δ c n/2. To see this, first suppose that some child has c of r has δ c > n/2. Moving the root from r to c adds 1 to the distance to n δ c vertices but subtracts 1 from the distance to δ c vertices. Hence the total distance decreases by moving the root to c, and r is not the correct vertex to choose. In the other direction, suppose that every child c of r has δ c n/2. To the contrary suppose that there is a vertex for which the total of the distances is less than from r; choose the one f that is closest to r. Now f must be a descendant of a child c of r, and hence f has at most n/2 descendants. But by the argument above, moving from f to its parent cannot increase the total of the distances, a contradiction. So r is indeed a correct choice. This underlies the algorithm. Having tried r, we check whether any child of r has more than n/2 descendants. If none does, we respond with r. Otherwise we choose such a child c, and move the root to c from r. To update the numbers of descendants, only two changes are needed. If r had n descendants and c had δ c, r will now have n δ c, and c will have n. This takes constant time. We can move the root no more than n times, so after O(n) moves each taking constant time, we report a correct vertex. Problem 5 Suppose that the given English word is W = w 1 w 2 w n and Bengali word is B = b 1 b 2 b m. We suppose that the standard alphabet in which each is written is Σ. We are to find a word P = p 1 p l for which max{ed(w, P ), ed(b, P )}} = min max{ed(w, Q), ed(b, Q)}} Q Σ In defining edit distance ed(x, y), we assume that the gap penalty is δ > 0; the mismatch penalty α aa = 0 for a Σ, and the mismatch penalty α ab = α ba > 0 for distinct a, b Σ. As in class we can form a directed graph G on (n + 1)(m + 1) vertices, say {0,..., n} {0,..., m}. Draw a directed edge from (i, j) to (i + 1, j) with cost δ; a directed edge from (i, j) to (i, j + 1) with cost δ, and a directed edge from (i, j) to (i + 1, j + 1) with cost α wi+1 b j+1. Then ed(w, B) is precisely the length of a shortest path from (0, 0) to (n, m) in G. Intuitively we want to split this path in half to find a good candidate for PIE, but we need to be careful. 4
5 Consider a particular shortest path from (0,0) to (n, m) in G. Let L be the list of insertions, deletions, and substitutions performed on W in following this path. The total cost of the operations in L is denoted by t. No operation in L can cost more than 2δ; for if so it is a substitution and can be replaced by an insertion and a deletion, lowering the total cost. Choose a subset L of L whose costs total t t/2, as close to t/2 as possible. Applying the operations in L to W yields a word P with ed(w, P ) = t and ed(p, B) = t t. We note that edit distance satisfies the triangle inequality that ed(w, B) ed(w, P ) + ed(p, B), so that P appears to be a good candidate if t and t t are as equal as possible. This is a good start, but we cannot be sure that we have selected the right path, and have not said how to find L. I would be very happy if anyone had gotten to a similar point in developing an answer. To get an exact answer, the idea is to build paths starting from (0,0) in G, keeping track at each vertex (i, j) of a set of ordered pairs, each of which specifies a distance from w 1 w i and from b 1 b j to a closest candidate in PIE. The concern is that there appear to be too many pairs at each vertex to keep track of; but note that if one pair has both entries at least as large as the corresponding entry in another pair, we do not need to keep it. Together with some plausible assumptions about the mismatch penalties, we can then ensure that the list of pairs at each vertex has polynomial length. Needless to say, I have omitted many details. And how might one find all? Sketch: Enumerate paths in G of close to shortest length; consider each way to split its operations into two sets of approximately equal cost. 5
Assignment 5: Solutions
Comp 21: Algorithms and Data Structures Assignment : Solutions 1. Heaps. (a) First we remove the minimum key 1 (which we know is located at the root of the heap). We then replace it by the key in the position
More informationCSCE 750 Final Exam Answer Key Wednesday December 7, 2005
CSCE 750 Final Exam Answer Key Wednesday December 7, 2005 Do all problems. Put your answers on blank paper or in a test booklet. There are 00 points total in the exam. You have 80 minutes. Please note
More informationCSE 431/531: Analysis of Algorithms. Dynamic Programming. Lecturer: Shi Li. Department of Computer Science and Engineering University at Buffalo
CSE 431/531: Analysis of Algorithms Dynamic Programming Lecturer: Shi Li Department of Computer Science and Engineering University at Buffalo Paradigms for Designing Algorithms Greedy algorithm Make a
More informationNotes on the Matrix-Tree theorem and Cayley s tree enumerator
Notes on the Matrix-Tree theorem and Cayley s tree enumerator 1 Cayley s tree enumerator Recall that the degree of a vertex in a tree (or in any graph) is the number of edges emanating from it We will
More informationCS 4407 Algorithms Lecture: Shortest Path Algorithms
CS 440 Algorithms Lecture: Shortest Path Algorithms Prof. Gregory Provan Department of Computer Science University College Cork 1 Outline Shortest Path Problem General Lemmas and Theorems. Algorithms Bellman-Ford
More informationMore Dynamic Programming
CS 374: Algorithms & Models of Computation, Spring 2017 More Dynamic Programming Lecture 14 March 9, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 42 What is the running time of the following? Consider
More informationMore Dynamic Programming
Algorithms & Models of Computation CS/ECE 374, Fall 2017 More Dynamic Programming Lecture 14 Tuesday, October 17, 2017 Sariel Har-Peled (UIUC) CS374 1 Fall 2017 1 / 48 What is the running time of the following?
More informationDesign and Analysis of Algorithms
Design and Analysis of Algorithms CSE 5311 Lecture 21 Single-Source Shortest Paths Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms 1 Single-Source
More informationAnalysis of Algorithms. Outline. Single Source Shortest Path. Andres Mendez-Vazquez. November 9, Notes. Notes
Analysis of Algorithms Single Source Shortest Path Andres Mendez-Vazquez November 9, 01 1 / 108 Outline 1 Introduction Introduction and Similar Problems General Results Optimal Substructure Properties
More informationCS 580: Algorithm Design and Analysis
CS 58: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 28 Announcement: Homework 3 due February 5 th at :59PM Midterm Exam: Wed, Feb 2 (8PM-PM) @ MTHW 2 Recap: Dynamic Programming
More informationChapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should
More informationCS60007 Algorithm Design and Analysis 2018 Assignment 1
CS60007 Algorithm Design and Analysis 2018 Assignment 1 Palash Dey and Swagato Sanyal Indian Institute of Technology, Kharagpur Please submit the solutions of the problems 6, 11, 12 and 13 (written in
More informationCSE 202 Dynamic Programming II
CSE 202 Dynamic Programming II Chapter 6 Dynamic Programming Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 Algorithmic Paradigms Greed. Build up a solution incrementally,
More informationPractice Final Solutions. 1. Consider the following algorithm. Assume that n 1. line code 1 alg(n) { 2 j = 0 3 if (n = 0) { 4 return j
Practice Final Solutions 1. Consider the following algorithm. Assume that n 1. line code 1 alg(n) 2 j = 0 3 if (n = 0) 4 return j } 5 else 6 j = 2n+ alg(n 1) 7 return j } } Set up a recurrence relation
More informationRECOVERING NORMAL NETWORKS FROM SHORTEST INTER-TAXA DISTANCE INFORMATION
RECOVERING NORMAL NETWORKS FROM SHORTEST INTER-TAXA DISTANCE INFORMATION MAGNUS BORDEWICH, KATHARINA T. HUBER, VINCENT MOULTON, AND CHARLES SEMPLE Abstract. Phylogenetic networks are a type of leaf-labelled,
More informationExam EDAF May Thore Husfeldt
Exam EDAF05 29 May 13 Thore Husfeldt Instructions What to bring. You can bring any written aid you want. This includes the course book and a dictionary. In fact, these two things are the only aids that
More informationEnumeration Schemes for Words Avoiding Permutations
Enumeration Schemes for Words Avoiding Permutations Lara Pudwell November 27, 2007 Abstract The enumeration of permutation classes has been accomplished with a variety of techniques. One wide-reaching
More informationTopics in Approximation Algorithms Solution for Homework 3
Topics in Approximation Algorithms Solution for Homework 3 Problem 1 We show that any solution {U t } can be modified to satisfy U τ L τ as follows. Suppose U τ L τ, so there is a vertex v U τ but v L
More informationProof Techniques (Review of Math 271)
Chapter 2 Proof Techniques (Review of Math 271) 2.1 Overview This chapter reviews proof techniques that were probably introduced in Math 271 and that may also have been used in a different way in Phil
More informationPreliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)}
Preliminaries Graphs G = (V, E), V : set of vertices E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) 1 2 3 5 4 V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)} 1 Directed Graph (Digraph)
More informationDiscrete Wiskunde II. Lecture 5: Shortest Paths & Spanning Trees
, 2009 Lecture 5: Shortest Paths & Spanning Trees University of Twente m.uetz@utwente.nl wwwhome.math.utwente.nl/~uetzm/dw/ Shortest Path Problem "#$%&'%()*%"()$#+,&- Given directed "#$%&'()*+,%+('-*.#/'01234564'.*,'7+"-%/8',&'5"4'84%#3
More informationBFS Dijkstra. Oct abhi shelat
4102 BFS Dijkstra Oct 22 2009 abhi shelat breadth first search bfs(g, a) 1 2 a b 1 2 d c e f g 2 h bfs theorem Theorem 1 (CLRS, p. 599) Let G =(V, E) be a graph and suppose that BFS is run on G from vertex
More informationCSE 555 Homework Three Sample Solutions
CSE 555 Homework Three Sample Solutions Question 1 Let Σ be a fixed alphabet. A PDA M with n states and stack alphabet of size σ may recognize the empty language; if its language is non-empty then denote
More information5.5 Deeper Properties of Continuous Functions
5.5. DEEPER PROPERTIES OF CONTINUOUS FUNCTIONS 195 5.5 Deeper Properties of Continuous Functions 5.5.1 Intermediate Value Theorem and Consequences When one studies a function, one is usually interested
More informationOn improving matchings in trees, via bounded-length augmentations 1
On improving matchings in trees, via bounded-length augmentations 1 Julien Bensmail a, Valentin Garnero a, Nicolas Nisse a a Université Côte d Azur, CNRS, Inria, I3S, France Abstract Due to a classical
More informationDynamic Programming. Shuang Zhao. Microsoft Research Asia September 5, Dynamic Programming. Shuang Zhao. Outline. Introduction.
Microsoft Research Asia September 5, 2005 1 2 3 4 Section I What is? Definition is a technique for efficiently recurrence computing by storing partial results. In this slides, I will NOT use too many formal
More informationSingle Source Shortest Paths
CMPS 00 Fall 015 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk 1 Paths in graphs Consider a digraph G = (V, E) with an edge-weight
More informationCMPSCI 311: Introduction to Algorithms Second Midterm Exam
CMPSCI 311: Introduction to Algorithms Second Midterm Exam April 11, 2018. Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more
More informationCounting independent sets of a fixed size in graphs with a given minimum degree
Counting independent sets of a fixed size in graphs with a given minimum degree John Engbers David Galvin April 4, 01 Abstract Galvin showed that for all fixed δ and sufficiently large n, the n-vertex
More informationSingle Source Shortest Paths
CMPS 00 Fall 017 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk Paths in graphs Consider a digraph G = (V, E) with an edge-weight
More informationPartha Sarathi Mandal
MA 252: Data Structures and Algorithms Lecture 32 http://www.iitg.ernet.in/psm/indexing_ma252/y12/index.html Partha Sarathi Mandal Dept. of Mathematics, IIT Guwahati The All-Pairs Shortest Paths Problem
More information6.2 Deeper Properties of Continuous Functions
6.2. DEEPER PROPERTIES OF CONTINUOUS FUNCTIONS 69 6.2 Deeper Properties of Continuous Functions 6.2. Intermediate Value Theorem and Consequences When one studies a function, one is usually interested in
More informationNATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: Time Allowed 2 Hours
NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: 2017 2018 Time Allowed 2 Hours INSTRUCTIONS TO STUDENTS 1. This assessment consists of Eight (8) questions and comprises
More informationCS173 Lecture B, November 3, 2015
CS173 Lecture B, November 3, 2015 Tandy Warnow November 3, 2015 CS 173, Lecture B November 3, 2015 Tandy Warnow Announcements Examlet 7 is a take-home exam, and is due November 10, 11:05 AM, in class.
More informationk-protected VERTICES IN BINARY SEARCH TREES
k-protected VERTICES IN BINARY SEARCH TREES MIKLÓS BÓNA Abstract. We show that for every k, the probability that a randomly selected vertex of a random binary search tree on n nodes is at distance k from
More informationLanguages, regular languages, finite automata
Notes on Computer Theory Last updated: January, 2018 Languages, regular languages, finite automata Content largely taken from Richards [1] and Sipser [2] 1 Languages An alphabet is a finite set of characters,
More informationEven Cycles in Hypergraphs.
Even Cycles in Hypergraphs. Alexandr Kostochka Jacques Verstraëte Abstract A cycle in a hypergraph A is an alternating cyclic sequence A 0, v 0, A 1, v 1,..., A k 1, v k 1, A 0 of distinct edges A i and
More informationHOMEWORK #2 - MATH 3260
HOMEWORK # - MATH 36 ASSIGNED: JANUARAY 3, 3 DUE: FEBRUARY 1, AT :3PM 1) a) Give by listing the sequence of vertices 4 Hamiltonian cycles in K 9 no two of which have an edge in common. Solution: Here is
More informationGreedy Algorithms. CSE 101: Design and Analysis of Algorithms Lecture 10
Greedy Algorithms CSE 101: Design and Analysis of Algorithms Lecture 10 CSE 101: Design and analysis of algorithms Greedy algorithms Reading: Kleinberg and Tardos, sections 4.1, 4.2, and 4.3 Homework 4
More informationIntroduction to Algorithms
Introduction to Algorithms 6.046J/18.401J LECTURE 14 Shortest Paths I Properties of shortest paths Dijkstra s algorithm Correctness Analysis Breadth-first search Prof. Charles E. Leiserson Paths in graphs
More informationMaximal and Maximum Independent Sets In Graphs With At Most r Cycles
Maximal and Maximum Independent Sets In Graphs With At Most r Cycles Bruce E. Sagan Department of Mathematics Michigan State University East Lansing, MI sagan@math.msu.edu Vincent R. Vatter Department
More informationIntroduction to Algorithms
Introduction to Algorithms 6.046J/8.40J/SMA550 Lecture 7 Prof. Erik Demaine Paths in graphs Consider a digraph G = (V, E) with edge-weight function w : E R. The weight of path p = v v L v k is defined
More informationMaximising the number of induced cycles in a graph
Maximising the number of induced cycles in a graph Natasha Morrison Alex Scott April 12, 2017 Abstract We determine the maximum number of induced cycles that can be contained in a graph on n n 0 vertices,
More informationLocating-Total Dominating Sets in Twin-Free Graphs: a Conjecture
Locating-Total Dominating Sets in Twin-Free Graphs: a Conjecture Florent Foucaud Michael A. Henning Department of Pure and Applied Mathematics University of Johannesburg Auckland Park, 2006, South Africa
More informationCMPS 6610 Fall 2018 Shortest Paths Carola Wenk
CMPS 6610 Fall 018 Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with changes and additions by Carola Wenk Paths in graphs Consider a digraph G = (V, E) with an edge-weight function w
More informationCSE 202 Homework 4 Matthias Springer, A
CSE 202 Homework 4 Matthias Springer, A99500782 1 Problem 2 Basic Idea PERFECT ASSEMBLY N P: a permutation P of s i S is a certificate that can be checked in polynomial time by ensuring that P = S, and
More informationAugmenting Outerplanar Graphs to Meet Diameter Requirements
Proceedings of the Eighteenth Computing: The Australasian Theory Symposium (CATS 2012), Melbourne, Australia Augmenting Outerplanar Graphs to Meet Diameter Requirements Toshimasa Ishii Department of Information
More informationCleaning Interval Graphs
Cleaning Interval Graphs Dániel Marx and Ildikó Schlotter Department of Computer Science and Information Theory, Budapest University of Technology and Economics, H-1521 Budapest, Hungary. {dmarx,ildi}@cs.bme.hu
More informationClassical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems
Classical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems Rani M. R, Mohith Jagalmohanan, R. Subashini Binary matrices having simultaneous consecutive
More information8 Priority Queues. 8 Priority Queues. Prim s Minimum Spanning Tree Algorithm. Dijkstra s Shortest Path Algorithm
8 Priority Queues 8 Priority Queues A Priority Queue S is a dynamic set data structure that supports the following operations: S. build(x 1,..., x n ): Creates a data-structure that contains just the elements
More informationTree sets. Reinhard Diestel
1 Tree sets Reinhard Diestel Abstract We study an abstract notion of tree structure which generalizes treedecompositions of graphs and matroids. Unlike tree-decompositions, which are too closely linked
More informationQuery Processing in Spatial Network Databases
Temporal and Spatial Data Management Fall 0 Query Processing in Spatial Network Databases SL06 Spatial network databases Shortest Path Incremental Euclidean Restriction Incremental Network Expansion Spatial
More informationDivide-and-Conquer Algorithms Part Two
Divide-and-Conquer Algorithms Part Two Recap from Last Time Divide-and-Conquer Algorithms A divide-and-conquer algorithm is one that works as follows: (Divide) Split the input apart into multiple smaller
More informationPattern Popularity in 132-Avoiding Permutations
Pattern Popularity in 132-Avoiding Permutations The MIT Faculty has made this article openly available. Please share how this access benefits you. Your story matters. Citation As Published Publisher Rudolph,
More informationCS Data Structures and Algorithm Analysis
CS 483 - Data Structures and Algorithm Analysis Lecture VII: Chapter 6, part 2 R. Paul Wiegand George Mason University, Department of Computer Science March 22, 2006 Outline 1 Balanced Trees 2 Heaps &
More informationExamination paper for TDT4120 Algorithms and Data Structures
Examination paper for TDT4120 Algorithms and Data Structures Academic contact during examination Magnus Lie Hetland Phone 91851949 Examination date December 7, 2013 Examination time (from to) 0900 1300
More informationOn Minimal Words With Given Subword Complexity
On Minimal Words With Given Subword Complexity Ming-wei Wang Department of Computer Science University of Waterloo Waterloo, Ontario N2L 3G CANADA m2wang@neumann.uwaterloo.ca Jeffrey Shallit Department
More informationIntroduction to Algorithms
Introduction to Algorithms 6.046J/18.401J LECTURE 17 Shortest Paths I Properties of shortest paths Dijkstra s algorithm Correctness Analysis Breadth-first search Prof. Erik Demaine November 14, 005 Copyright
More informationLecture 2 September 4, 2014
CS 224: Advanced Algorithms Fall 2014 Prof. Jelani Nelson Lecture 2 September 4, 2014 Scribe: David Liu 1 Overview In the last lecture we introduced the word RAM model and covered veb trees to solve the
More informationCographs; chordal graphs and tree decompositions
Cographs; chordal graphs and tree decompositions Zdeněk Dvořák September 14, 2015 Let us now proceed with some more interesting graph classes closed on induced subgraphs. 1 Cographs The class of cographs
More informationGreedy. Outline CS141. Stefano Lonardi, UCR 1. Activity selection Fractional knapsack Huffman encoding Later:
October 5, 017 Greedy Chapters 5 of Dasgupta et al. 1 Activity selection Fractional knapsack Huffman encoding Later: Outline Dijkstra (single source shortest path) Prim and Kruskal (minimum spanning tree)
More informationCMPS 2200 Fall Carola Wenk Slides courtesy of Charles Leiserson with small changes by Carola Wenk. 10/8/12 CMPS 2200 Intro.
CMPS 00 Fall 01 Single Source Shortest Paths Carola Wenk Slides courtesy of Charles Leiserson with small changes by Carola Wenk 1 Paths in graphs Consider a digraph G = (V, E) with edge-weight function
More informationCS1800: Mathematical Induction. Professor Kevin Gold
CS1800: Mathematical Induction Professor Kevin Gold Induction: Used to Prove Patterns Just Keep Going For an algorithm, we may want to prove that it just keeps working, no matter how big the input size
More informationEnumeration and symmetry of edit metric spaces. Jessie Katherine Campbell. A dissertation submitted to the graduate faculty
Enumeration and symmetry of edit metric spaces by Jessie Katherine Campbell A dissertation submitted to the graduate faculty in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY
More informationAll-Pairs Shortest Paths
All-Pairs Shortest Paths Version of October 28, 2016 Version of October 28, 2016 All-Pairs Shortest Paths 1 / 26 Outline Another example of dynamic programming Will see two different dynamic programming
More informationCS60020: Foundations of Algorithm Design and Machine Learning. Sourangshu Bhattacharya
CS6000: Foundations of Algorithm Design and Machine Learning Sourangshu Bhattacharya Paths in graphs Consider a digraph G = (V, E) with edge-weight function w : E R. The weight of path p = v 1 v L v k
More informationSanta Claus Schedules Jobs on Unrelated Machines
Santa Claus Schedules Jobs on Unrelated Machines Ola Svensson (osven@kth.se) Royal Institute of Technology - KTH Stockholm, Sweden March 22, 2011 arxiv:1011.1168v2 [cs.ds] 21 Mar 2011 Abstract One of the
More informationMath 324 Summer 2012 Elementary Number Theory Notes on Mathematical Induction
Math 4 Summer 01 Elementary Number Theory Notes on Mathematical Induction Principle of Mathematical Induction Recall the following axiom for the set of integers. Well-Ordering Axiom for the Integers If
More informationLecture 13: Spectral Graph Theory
CSE 521: Design and Analysis of Algorithms I Winter 2017 Lecture 13: Spectral Graph Theory Lecturer: Shayan Oveis Gharan 11/14/18 Disclaimer: These notes have not been subjected to the usual scrutiny reserved
More informationPacking and decomposition of graphs with trees
Packing and decomposition of graphs with trees Raphael Yuster Department of Mathematics University of Haifa-ORANIM Tivon 36006, Israel. e-mail: raphy@math.tau.ac.il Abstract Let H be a tree on h 2 vertices.
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. May 11/13, 2015 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationCSE 4502/5717 Big Data Analytics Spring 2018; Homework 1 Solutions
CSE 502/5717 Big Data Analytics Spring 2018; Homework 1 Solutions 1. Consider the following algorithm: for i := 1 to α n log e n do Pick a random j [1, n]; If a[j] = a[j + 1] or a[j] = a[j 1] then output:
More informationDesign and Analysis of Algorithms
CSE 101, Winter 2018 Design and Analysis of Algorithms Lecture 5: Divide and Conquer (Part 2) Class URL: http://vlsicad.ucsd.edu/courses/cse101-w18/ A Lower Bound on Convex Hull Lecture 4 Task: sort the
More informationSection Summary. Relations and Functions Properties of Relations. Combining Relations
Chapter 9 Chapter Summary Relations and Their Properties n-ary Relations and Their Applications (not currently included in overheads) Representing Relations Closures of Relations (not currently included
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 7 Greedy Graph Algorithms Shortest paths Minimum Spanning Tree Sofya Raskhodnikova 9/14/016 S. Raskhodnikova; based on slides by E. Demaine, C. Leiserson, A. Smith,
More information2 P vs. NP and Diagonalization
2 P vs NP and Diagonalization CS 6810 Theory of Computing, Fall 2012 Instructor: David Steurer (sc2392) Date: 08/28/2012 In this lecture, we cover the following topics: 1 3SAT is NP hard; 2 Time hierarchies;
More informationBreadth-First Search of Graphs
Breadth-First Search of Graphs Analysis of Algorithms Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Applications of Breadth-First Search of Graphs a) Single Source
More informationDouble domination edge removal critical graphs
AUSTRALASIAN JOURNAL OF COMBINATORICS Volume 48 (2010), Pages 285 299 Double domination edge removal critical graphs Soufiane Khelifi Laboratoire LMP2M, Bloc des laboratoires Université demédéa Quartier
More informationA Questionable Distance-Regular Graph
A Questionable Distance-Regular Graph Rebecca Ross Abstract In this paper, we introduce distance-regular graphs and develop the intersection algebra for these graphs which is based upon its intersection
More informationJoin Ordering. Lemma: The cost function C h has the ASI-Property. Proof: The proof can be derived from the definition of C H :
IKKBZ First Lemma Lemma: The cost function C h has the ASI-Property. Proof: The proof can be derived from the definition of C H : and, hence, C H (AUVB) = C H (A) +T (A)C H (U) +T (A)T (U)C H (V ) +T (A)T
More informationBreadth First Search, Dijkstra s Algorithm for Shortest Paths
CS 374: Algorithms & Models of Computation, Spring 2017 Breadth First Search, Dijkstra s Algorithm for Shortest Paths Lecture 17 March 1, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 42 Part I Breadth
More informationGreedy Algorithms My T. UF
Introduction to Algorithms Greedy Algorithms @ UF Overview A greedy algorithm always makes the choice that looks best at the moment Make a locally optimal choice in hope of getting a globally optimal solution
More informationk-degenerate Graphs Allan Bickle Date Western Michigan University
k-degenerate Graphs Western Michigan University Date Basics Denition The k-core of a graph G is the maximal induced subgraph H G such that δ (H) k. The core number of a vertex, C (v), is the largest value
More informationCSE 417. Chapter 4: Greedy Algorithms. Many Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.
CSE 417 Chapter 4: Greedy Algorithms Many Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 Greed is good. Greed is right. Greed works. Greed clarifies, cuts through,
More informationNAOMI NISHIMURA Department of Computer Science, University of Waterloo, Waterloo, Ontario, N2L 3G1, Canada.
International Journal of Foundations of Computer Science c World Scientific Publishing Company FINDING SMALLEST SUPERTREES UNDER MINOR CONTAINMENT NAOMI NISHIMURA Department of Computer Science, University
More informationHomework Assignment 4 Solutions
MTAT.03.86: Advanced Methods in Algorithms Homework Assignment 4 Solutions University of Tartu 1 Probabilistic algorithm Let S = {x 1, x,, x n } be a set of binary variables of size n 1, x i {0, 1}. Consider
More informationQuiz 1 Solutions. Problem 2. Asymptotics & Recurrences [20 points] (3 parts)
Introduction to Algorithms October 13, 2010 Massachusetts Institute of Technology 6.006 Fall 2010 Professors Konstantinos Daskalakis and Patrick Jaillet Quiz 1 Solutions Quiz 1 Solutions Problem 1. We
More informationNowhere 0 mod p dominating sets in multigraphs
Nowhere 0 mod p dominating sets in multigraphs Raphael Yuster Department of Mathematics University of Haifa at Oranim Tivon 36006, Israel. e-mail: raphy@research.haifa.ac.il Abstract Let G be a graph with
More informationPerfect matchings in highly cyclically connected regular graphs
Perfect matchings in highly cyclically connected regular graphs arxiv:1709.08891v1 [math.co] 6 Sep 017 Robert Lukot ka Comenius University, Bratislava lukotka@dcs.fmph.uniba.sk Edita Rollová University
More informationSupplementary material to Structure Learning of Linear Gaussian Structural Equation Models with Weak Edges
Supplementary material to Structure Learning of Linear Gaussian Structural Equation Models with Weak Edges 1 PRELIMINARIES Two vertices X i and X j are adjacent if there is an edge between them. A path
More informationPigeonhole Principle and Ramsey Theory
Pigeonhole Principle and Ramsey Theory The Pigeonhole Principle (PP) has often been termed as one of the most fundamental principles in combinatorics. The familiar statement is that if we have n pigeonholes
More informationExact Algorithms for Dominating Induced Matching Based on Graph Partition
Exact Algorithms for Dominating Induced Matching Based on Graph Partition Mingyu Xiao School of Computer Science and Engineering University of Electronic Science and Technology of China Chengdu 611731,
More informationTHE RADIO NUMBERS OF ALL GRAPHS OF ORDER n AND DIAMETER n 2
LE MATEMATICHE Vol LXVIII (2013) Fasc II, pp 167 190 doi: 104418/201368213 THE RADIO NUMBERS OF ALL GRAPHS OF ORDER n AND DIAMETER n 2 K F BENSON - M PORTER - M TOMOVA A radio labeling of a simple connected
More informationAlgorithms and Theory of Computation. Lecture 9: Dynamic Programming
Algorithms and Theory of Computation Lecture 9: Dynamic Programming Xiaohui Bei MAS 714 September 10, 2018 Nanyang Technological University MAS 714 September 10, 2018 1 / 21 Recursion in Algorithm Design
More informationAside: Golden Ratio. Golden Ratio: A universal law. Golden ratio φ = lim n = 1+ b n = a n 1. a n+1 = a n + b n, a n+b n a n
Aside: Golden Ratio Golden Ratio: A universal law. Golden ratio φ = lim n a n+b n a n = 1+ 5 2 a n+1 = a n + b n, b n = a n 1 Ruta (UIUC) CS473 1 Spring 2018 1 / 41 CS 473: Algorithms, Spring 2018 Dynamic
More informationWe are going to discuss what it means for a sequence to converge in three stages: First, we define what it means for a sequence to converge to zero
Chapter Limits of Sequences Calculus Student: lim s n = 0 means the s n are getting closer and closer to zero but never gets there. Instructor: ARGHHHHH! Exercise. Think of a better response for the instructor.
More informationA misère-play -operator
A misère-play -operator Matthieu Dufour Silvia Heubach Urban Larsson arxiv:1608.06996v1 [math.co] 25 Aug 2016 July 31, 2018 Abstract We study the -operator (Larsson et al, 2011) of impartial vector subtraction
More informationChapter 4: Computation tree logic
INFOF412 Formal verification of computer systems Chapter 4: Computation tree logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 CTL: a specification
More informationAn Õ m 2 n Randomized Algorithm to compute a Minimum Cycle Basis of a Directed Graph
An Õ m 2 n Randomized Algorithm to compute a Minimum Cycle Basis of a Directed Graph T Kavitha Indian Institute of Science Bangalore, India kavitha@csaiiscernetin Abstract We consider the problem of computing
More informationChapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 P and NP P: The family of problems that can be solved quickly in polynomial time.
More information