CSC421:AppliedAlgorithms
andStructures
Spring,2015
JohnRogers
jrogers@cs.depaul.edu
Administrativedetails

D2L web site: http:/d2l.depaul.edu

Important dates

Personal web page: http:/facsrv.cs.depaul.edu/~jrogers

COL recordings on D2L page

Check
1
On Existential MSO and its Relation to ETH1
Robert Ganian, Algorithms and Complexity Group, TU Wien, Vienna, Austria
Ronald de Haan, Algorithms and Complexity Group, TU Wien, Vienna, Austria
Iyad Kanj, School of Computing, DePaul University, Chicago, IL
10 points test file:
The minimum distance is:
947.405404249: (511, 4721)<>(1267, 5292)
100 points test file:
The minimum distance is:
90.4433524368: (1730, 3258)<>(1758, 3344)
1000 points test file:
The minimum distance is:
47.853944456: (42980, 1059
Problem 1
A hamiltonian path in a graph is a simple path that visits every vertex exactly
once. Show that the language HAMPATH =cfw_G,u,v there is a hamiltonian
path from u to v in graph G belongs to NP.
Let the input x be cfw_G,u,v and y be a given solu
Arshad Khan
1. Since the start vertex is 8, we start by selecting (8, 5) first which has minimum weight of 2
Then we select (5, 1), (1, 2), (5, 6), (8, 10), (10, 7), (2, 3), (5, 4), (8, 11), (11, 12) and last we add
vertex (12, 9)
Parent (1 = 5, 2 = 1, 3
1. Quick sort A= [20,17,35,30,15,14,36,12]
We compare first and last since last is less than first we swap
a = [12,17,35,30,15,14,36,20]
We start by selecting pivot to be the left most element. Pivot = 12, I = 12, j = I +1 = 17;
Recursively we compare all
1.
2.
3.
4.
3 2 1 4 5 6 9 8 7 10 11 12
32451
71253846
For every v in G do
Color(v) = whilte;
Stack = null;
For every v in G do
If color(v) = white then
Dfs(v);
While stack != null do
V = pop(s)
Output(v);
Dfs(v):
Color(v) = grey
For every neighbor of w of
02
problem 01
Assuming P != NP, for each of the problems below, say whether it is solvable in polynomial time or whether it is NPcomplete, and justify your answer. (That is, if you say
that the problem is polynomialtime solvable, explain how it can be s
CSC421:AppliedAlgorithms
andStructures
Week6(May4th)
Spring,2015
JohnRogers;
Tonight
First, we will discuss the problem set 2 solutions.
Next, well take a look at two problems requiring a dynamic
programming solution: 156 and 159.
We continue with the g
CSC421:AppliedAlgorithms
andStructures
Week4(April20th)
Spring,2015
JohnRogers;
Tonight
First, we will discuss the problem set 1 solutions.
Afterwards, we will discuss the algorithm design technique
of dynamic programming by solving four problems:

Compu
CSC421:AppliedAlgorithms
andStructures
Week2(April6th)
Spring,2015
JohnRogers;
ProblemSet1
Questions about problem set 1?
Tonight I will begin with analyzing bubble sort, proving that
it's correct and computing its running time.
We will also discuss divid
CSC421:AppliedAlgorithms
andStructures
Week3(April13th)
Spring,2015
JohnRogers;
Tonight
Questions about problem set 2?
Tonight I will present quick sort, a divideandconquer
algorithm that is also a randomized algorithm and that has
a somewhat involved a
CSC421:AppliedAlgorithms
andStructures
Week7(May11th)
Spring,2015
JohnRogers;
Tonight
Graphrepresentation
Digraphrepresentation
Edgeweightedgraphs
Adjacency list: Have each linked list node include an extra
field for the weight
Adjacency matrix: Replace 1
CSC421:AppliedAlgorithms
andStructures
Week8(May18th)
Spring,2015
JohnRogers;
Uncomputableproblems
We will begin with problems that have no solution.
Why cant an infinite loop checker exist?
To the board.
Contrastingpairs
Euler cycle vs. Hamiltonian cycle
CSC421:AppliedAlgorithms
andStructures
Week5(April27th)
Spring,2015
JohnRogers;
Tonight
First, we will discuss the problem set 2 solutions.
Continuing with dynamic programming.
DPontwoslides:Problemtype
DPontwoslides:Technique
The dynamic programming tech
Assignment #1 (due 9/29)
Note. When asked to give an algorithm that meets a certain time bound, you need to give the algorithm (pseu docode/description)
and analyze its running time to show that it meets the required bound; giving only the algorithm is n
Lower bounds based on the
Exponential Time Hypothesis
Daniel Lokshtanov
Dniel Marx
Saket Saurabh
Abstract
In this article we survey algorithmic lower bound results that have
been obtained in the field of exact exponential time algorithms and parameterized
1. Quick sort A= [20,17,35,30,15,14,36,12]
We compare first and last since last is less than first we swap
a = [12,17,35,30,15,14,36,20]
We start by selecting pivot to be the left most element. Pivot = 12, I = 12, j = I +1 = 17;
Recursively we compare all